ES6 字符串、对象和数值
字符串
查找字符串的方法:
includes():判断字符串中是否有该参数。
startsWith():判断字符串的头部是否有该参数。
endsWith():判断字符串的尾部是否有该参数。
以上方法都是返回布尔类型的值,并且可以选择查找的初始位置。其中includes()方法比较常用。代码流程如下:
let string = "马上要开学了!!!";
//查找string中是否有“开学了”几个字
string.includes("开学了");//true
string.includes("学了",4);//true
字符串重复的方法:
repeat();方法是用于重复输出的方法。
console.log("黑子弟弟!".repeat(3));//黑子弟弟!黑子弟弟!黑子弟弟!
如果输入的参数是小数的话就会向下取整
console.log("黑子弟弟!".repeat(2.3));//黑子弟弟!黑子弟弟!
输入的参数不能够低于-1不包括-1,否则就会报错
对象
ES6允许用表达式作为属性名,但是一定要将表达式放在方括号内。
拓展运算符(…)用于取出参数对象所有可遍历属性然后拷贝到当前对象。
let person = {name: "黑子", age: 12};
let someone = { ...person };
someone; //{name: "黑子", age: 12}
Object.is()方法是判断两个值是否相等的
Object.is("黑子","弟弟");//false
Object.is("黑子","黑子");//true
Object.is([22,11],[22,11]);//值是一样的,但是对象不同了,所以是false
Object.assign()用于将源对象的所有可枚举属性复制到目标对象中。
let person = {name: "黑子"};
let object2 = {age: 12};
let object3 = {stature : 145};
Object.assign(person ,object2,object3);
//第一个参数是目标对象,后面的参数是源对象
person ; // {name: "黑子",age: 12,stature : 145}
如果目标对象和源对象有重复的属性的话,后面的属性会覆盖前面的属性。
数值
数值的表示
二进制的写法
//前缀0b或0B都可以
console.log(0b11 === 3); // true
console.log(0B11 === 6); // false
八进制的写法
//前缀0o或0o都可以
console.log(0o11 === 9); // true
console.log(0O11 === 9); // true
Number.isFinite()是否是有限的
console.log( Number.isFinite(-555)); //true
//如果值是NaN
console.log( Number.isFinite(NaN)); //false