mytest="This
is
a
JavaScript"
mystringlength=mytest.length
最后mystringlength返回mytest字串的长度为20。
因为中文字占两个字节,英文占一个字节。方法1:把中文字替换成两个字母。然后计算长度。
方法2:直接判断中文,长度+2。
运用的方法大同小异。都是通过正则表达式,写unicode编码。
方法1中
[\u4e00-\u9fa5]:匹配中文字符
[^\x0000-\x00ff]:匹配双字节字符(包括中文字)
正则表达示 /[\u4e00-\u9fa5]/g 的 g 必须要,global,全部都要检查的意思。没有的话输出的是(2333aa哈)
方法2中的函数
扩展:
这个很好理解的数组有一个属性是 length 他的值就是 数组的长度
字符串也有一个属性是 length 他的值就是 字符串的长度
方法和属性 不是一个概念。数组和字符串没有你说的lenght()这个方法
你可以自己试试
数组.length
数组.lenght() //会报错
字符串.length
字符串.lenght() //会报错