1.作用域
1.在ES6的语法环境中,有了块级作用域
1.let就是用来声明一个局部变量的,如果在代码中,使用了ES6语法,那么这个程序就默认开启了严格模式‘use strict’
2.const就是用来声明常量
*1.声明的时候就必须赋值*
*2.不能二次赋值*
例子:
如图:
<mark>使用var 定义时</mark>
function loop() {
for (var index = 0; index < 10; index++) {
console.log(index);
}
console.log('object' + index);
}
loop();
结果:
<mark>使用let定义:</mark>
function loop() {
for (let index = 0; index < 10; index++) {
console.log(index);
}
console.log('object' + index);
}
loop();
结果:
2.字符串扩展
1. for … of
var str = "i am a big father"
for (let item of str) {
console.log(item);
}
结果:以此遍历
2.includes() startsWith() endsWith()
一套判断字符串是否包含另一个字符串api,他们的返回值,都是bool
var str = "i am a big father"
console.log(str.includes('i')); //str字符串中是否包含'i'
console.log(str.startsWith('i')); //开头
console.log(str.endsWith('i')); //结尾
3.字符串的复制N遍:repeat()
str.repeat(3)//字符串赋值3便,其中括号内为整数
4.字符串补全
//padStart(),padEnd()
//第一个参数:补齐后,最后长度
console.log(str.padStart(30, "x"));//从开头开始补全,最后长度为30,用x补全
console.log(str.padEnd(30, "x"));//从结尾开始
5.模板字符串
一般用在大量字符串的拼接
var name = 'ahf';
var age = '14';
var str = 'htllo,' + name + age;
//特别注意:模板字符串两端的点,不是单引号,是 `
var str1 = `hello,${name},${age}`;
console.log(str);
console.log(str1);
//str显示效果等同于str1
3.数值扩展
1.Number.isFinite()
判断一个数是不是又穷的,返回值为bool类型
console.log(Number.isFinite(100));//true
2.Number.isInteger()
判断是不是整数
console.log(Number.isInteger(111));//true
console.log(Number.isInteger(111.1));//false
3.Math.trunc()
取整
console.log(Math.trunc(4.1));//false