ES6字符串模版以及数字操作

1、字符串的拼接

在ES5中字符串的拼接如下:

let es6 = 'ES6';
let str = '学习' + es6 + '很开心';
console.log(str);    //学习ES6很开心

这样拼接有些麻烦且容易产生引号嵌套问题。所以在ES6中采用了新的拼接方式,如下(以反引号`包裹,变量用${}包裹):

let es6 = 'ES6';
let str = `学习${es6}很开心`;
console.log(str);     //学习ES6很开心

并且在ES6的字符串拼接中,也可以插入html标签,如下:

let es6 = 'ES6';
let str = `"color:red">学习</b>${es6}很开心`;
document.write(str);    //学习ES6很开心(学习二字加粗变红了)
也支持简单的运算(两侧的反引号不能省)
let a = 1;
let b = 2;
let res = `${a + b}`;
console.log(res);    //3

2、字符串的查找

在ES5中字符串的查找:

let es6 = 'ES6';
let str = '学习' + es6 + '很开心';
console.log(str.indexOf(es6)>0);    //true

而在ES6中字符串的查找如下:

let es6 = 'ES6';
let str = '学习' + es6 + '很开心';
console.log(str.includes(es6));    //true

判断字符串开头是否存在(startsWith):

let es6 = 'ES6';
let str = '学习' + es6 + '很开心';
console.log(str.startsWith(es6));

判断字符串结尾是否存在(endsWith):

let es6 = 'ES6';
let str = '学习' + es6 + '很开心';
console.log(str.endsWith(es6));

3、字符串复制

console.log('学习!'.repeat(5));    //学习!学习!学习!学习!学习!

4、二进制以及八进制数值的声明

二进制的英文单词是binary:

let a = 0b0101;    //b可大写可小写
console.log(a);    //5

八进制的英文单词是octal:

let a = 0o1234;    //o可大写可小写
console.log(a);    //668

5、判断一个变量是不是数字

let a = 123;
console.log(Number.isFinite(a));    //true
console.log(Number.isFinite(NaN));    //false
console.log(Number.isFinite(undefoned));    //false
console.log(Number.isFinite(null));    //false
console.log(Number.isFinite('a'));    //false

6、NaN的判断

只有是NaN的时候才为真,别的任何值都为假

console.log(Number.isNaN(NaN));    //true

7、判断一个变量是不是一个整数

只有是整数时才为真,别的值都为假

console.log(Number.isInteger(1));    //true
console.log(Number.isInteger(1+'1'));     //false

8、整数的范围

在ES6中,将最大安全整数以及最小安全整数定义成了一个常量,也就是2的53次方减1

console.log(Math.pow(2,53)-1);                             //9007199254740991
console.log(Number.MAX_SAFE_INTEGER);      //9007199254740991
console.log(Number.MIN_SAFE_INTEGER);       //-9007199254740991

判断一个数是不是安全整数用isSafeInteger

let a = Math.pow(2,53)-1;
let b = Math.pow(2,53);
console.log(Number.isSafeInteger(a));    //true
console.log(Number.isSafeInteger(b));    //false

你可能感兴趣的:(ES6的学习)