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

4.数组扩展

5.函数扩展

6.解析赋值

7.Promiss