猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
用JS怎样才能正确的得到字符串的长度?
var s = '吉林?';
s.length; //4
用js输出s.length的是4,但是变量s的字符串的个数是3,如何通过代码准确得到变量 s 的字符串个数(3)?
慕神8447489
浏览 1438
回答 2
2回答
守着星空守着你
s.match(/[\s\S]/gu).length主要是正则表达式u标志符可以匹配4字节 Unicode 编码。空字符串要处理一下。。。因为 match 返回 null。正则表达式u是ES6的特性,同样的ES6的字符串迭代器也能正确处理 Unicode 编码:[...s].length等等写法。我好奇地跑去 babel 测试了一下,发现了这群大触丧病的 hack:s.match(/[\s\S]/gu)s.match(/(?:[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/g)
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
JavaScript
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续