numGeneral.js 【数字一般化】:
Demo + 下载:
简述:
该功能自动获取字符串内所含的数字,可将带有科学计数法的数值转为正常的一般数值,检查多个可获取多个数字到数组内。
兼容性:
Chrome, Firefox, Opera, Safari, Edge, IE :全兼容
语法 1:
numGeneral (val, mand, type)
<val> 输入文本(必要)
字符串 | 纯数字
:需要转换的输入值。
<mand> 检查多个数字
false
:(默认)不检查字符串内是否有多个数字。true
:多个数字时返回数组。
<type> 输出类型
空
:(默认)自动选择,输出内容不带科学计数法时为数字类型,反之为字符串类型。"number"
:规定输出数字类型,当数字过大或过小时可能是带有科学计数法的数字。"string"
:规定输出字符串类型。
注释:
- 功能完整的代码函数,不限制字符数量。
- 当字符串内无数字的情况下返回原来的内容。
- 当
<mand>
为"string"或"number"<type>
不存在时,原<mand>
将继承<type>
的功能, 其它不变。- 示例:
numGeneral(12.345e+2)
=>1234.5
numGeneral("www.a123.4b.com/555#", true, "number")
=>[123.4, 555]
语法 2:
Number.toGeneral()
注释:
- 嵌入进数字对象的通用法则。
- 整数值需要用括号括起来再执行。
- NaN或Infinity则返回原值无法计算。
- 输入数值过大或者过小有可能会返回Infinity。
- 输入数值精度大于16位可能会省略掉后面的数值。
- 示例:
123.45e-2.toGeneral()
=>1.2345
(520).toGeneral()
=>520
语法 3:
String.toNumGeneral(mand, type)
注释:
- 对字符串对象进行函数包装后的通用法则。
- 该功能需要有函数支持
numGeneral
或Number.prototype.toGeneral
之一。- 指令与
numGeneral(val, mand, type)
同理。- 示例:
".987abc".toNumGeneral()
=>0.987
"a1,b2,c3e2".toNumGeneral(true, "string")
=>["1", "2", "300"]