1、字符串可以使用\uxxxx
的形式来表达一个字符,xxxx叫做字符的码点,xxxx的范围是0000-ffff,超过ffff的码点需要用两个双字节表示
如果我们\u后面的16进制的值大于ffff,我们需要加一个大括号\u{20BB7}
让js正确解析。
2、我们应该都了解,汉字一般都需要两个双字节来表示,在js中两个字节占一个长度(length),所以汉字在很多时候占了2个长度影响我们的判断提取。
var l = "李";
//l.length = 2
但是我们一般都是想要这样
var l = "李继轩";
解决方法:
var l = '李继轩';
for (let u of l) {
console.log(u.codePointAt(0).toString(16));
}
3、includs() starwith() endwidth()
const s = 'Hello world!';
s.startsWith('Hello') // true
s.endsWith('!') // true
s.includes('o') // true
可以传入第二个参数,代表开始查询的位置。
const s = 'Hello world!';
s.startsWith('world', 6) // true
s.endsWith('Hello', 5) // true
s.includes('Hello', 6) // fal
4、repeat( n );
将字符串重复n次,n为正整数
n为小数,自动向下取整
负数无穷大,报错
NAN 0-(-1)的小数,为0
字符串,转换为数字
字符串模版
这个是很常用的哦,我们在之前字符串拼接时,需要用+号将各个字符串连接起来:
'my name is ' + myName;
myName是一个变量
在es6中,我们这样使用就好:
`my name is ${myName}`
我们只需要用${变量},将引号变成反引号(在esc下面)
就可以轻松的实现字符串的拼接了
在模版字符串后面加.trim() , 可以去掉前后空格。
如果字符串模版写在标签后面,就会被当成参数:
alert`123`
// =
alert(123)