Open cssmagic opened 9 years ago
以下是未开公、未确定的接口。可能有部分特性还未实现。
_.str.CNY
人民币符号 ¥
。
_.str.RMB
_.str.CNY
的别名。
_.str.FULL_WIDTH_CNY
全角的人民币符号 ¥
。
// 将所有全角的人民币符号替换为半角
var text = '¥1000~¥2000'
text.split(_.str.FULL_WIDTH_CNY).join(_.str.CNY) // => '¥1000~¥2000'
_.str.FULL_WIDTH_RMB
_.str.FULL_WIDTH_CNY
的别名。
_.str.isFullUrl(string)
判断是否为完整的 URL。以 http://
、https://
或 //
开头的字符串即视为完整。
string
-- 字符串。需要判断的字符串。布尔值。判断结果。
_.str.isHash('http://foo.com/bar') // => true
_.str.isHash('foo.com') // => false
_.str.isHash('/bar/index.html') // => false
_.str.isAbsolutePath(string)
判断是否为绝对路径。以 http://
、https://
、//
或 /
开头的字符串即视为绝对路径。
string
-- 字符串。需要判断的字符串。布尔值。判断结果。
_.str.isHash('http://foo.com/bar') // => true
_.str.isHash('foo.com') // => false
_.str.isHash('/bar/index.html') // => true
_.str.uniq(array)
从字符串数组中去除重复的项。
null
和 'null'
会被视为重复。array
-- 字符串数组。数组。去重结果。
_.str.uniq(['foo', 'foo', 'bar']) // => ['foo', 'bar']
_.str.toFloat(string)
转换为浮点数。
可以视为 parseFloat()
的别名。
string
-- 字符串。数字。转换结果。
_.str.toFloat('0') // => 0
_.str.toFloat('1.77') // => 1.77
_.str.toFloat('2.3.6') // => 2.3
_.str.toFloat('2e3') // => 2000
_.str.toFloat('1.23foo') // => 1.23
_.str.toFloat('foo123') // => NaN
_.str.toInt(string)
转换为整数。
可以视为 parseInt(string, 10)
的别名。直接取整,不做舍入。
string
-- 字符串。数字。转换结果。
_.str.toInt('0') // => 0
_.str.toInt('1.77') // => 1
_.str.toInt('2.3.6') // => 2
_.str.toInt('2e3') // => 2000
_.str.toInt('1.23foo') // => 1
_.str.toInt('foo123') // => NaN
_.str.toFixed(string, [i])
转换为固定位数的小数。会做舍入。
与 Number.prototype.toFixed()
的功能类似,但此接口接收字符串,输出数字。
string
-- 字符串。i
-- 可选。整数。保留的位数。默认值为 0
。数字。转换结果。
_.str.toFixed('0') // => 0
_.str.toFixed('0', 2) // => 0
_.str.toFixed('1.77') // => 2
_.str.toFixed('1.77', 1) // => 1.8
_.str.toFixed('2.3.6', 2) // => 2.3
_.str.toFixed('2e3', 3) // => 2000
_.str.toFixed('1.23foo', 1) // => 1.2
_.str.toFixed('foo123') // => NaN
API 文档 -
str
模块JavaScript 变量
以下预定义的变量在业务层可以直接使用。
_.str.RE_EMAIL
校验电子邮箱的正则表达式。
示例
_.str.RE_MOBILE
校验手机号的正则表达式。
手机号必须是中国大陆的手机号,13 位数字,不可包含空格、横杠等特殊字符。
示例
_.str.RE_POSTCODE
校验邮政编码的正则表达式。
邮政编码必须是中国大陆的邮政编码,6 位数字,不可包含空格、横杠等特殊字符。
示例
JavaScript 接口
_.str.isHash(string)
判断是否为 hash 字符串。
Hash 字符串以
#
开头,比如#foo
就是一个 hash 字符串。这种字符串通常出现于链接锚点(<a href="#anchor">bar</a>
)、ID 选择符($('#id')
)、Twitter 标签或location.hash
的值等等。字符串开头的空白符将被忽略,不影响判断结果。
参数
string
-- 字符串。需要判断的字符串。返回值
布尔值。判断结果。
示例
_.str.stripHash(string)
去除 hash 字符串开头的
#
字符。字符串头尾的空白符也将被去除。
参数
string
-- 字符串(非字符串会被强制转换为字符串)。需要处理的字符串。返回值
字符串。处理结果。
示例
Underscore.string 同名接口
str
模块提供的部分接口与 Underscore.string 类库的同名接口完全一致。这些接口的源码均引用了 Underscore.string 的实现,并存放在src/str-backup.js
文件中。如果你的项目已经加载了 Underscore.string 类库,则可以自行构建一个不包含这部分源码的 Underscore.ext 包;此时使用完整的 Underscore.ext 包也没有关系,因为它会自动跳过这些同名接口的加载。
字符串裁剪
_.str.trim(string, [characters])
请参考 Underscore.string 的文档:
trim
_.str.ltrim(string, [characters])
请参考 Underscore.string 的文档:
ltrim
_.str.rtrim(string, [characters])
请参考 Underscore.string 的文档:
rtrim
字符串包含关系
_.str.include(string, substring)
请参考 Underscore.string 的文档:
include
别名:
_.str.contains()
_.str.startsWith(string, starts, [position])
请参考 Underscore.string 的文档:
startsWith
_.str.endsWith(string, ends, [position])
请参考 Underscore.string 的文档:
endsWith