ES6

常识

ECMAScript:

    es35

    es6之后的都叫:es6[2015年推出]


let和const

解构赋值

    一一对应

let [a,b,c] = [1,2,3]

var{name:name1,age:age1} = {name:macro,age:25}

字符串

函数

对象

数组新api


[1]变量提升

[2]常量定义

[3]重复定义

[4]局部变量可见

---出现es6

[1]let——解决重复定义、块级作用域、先定义后使用

    ---闭包也可以解决块级作用域问题

[2]const——需要初始化;不可更改

简单操作

let name = 'macro';

let age = 25;

// 正则表达式;模板字符串

let res = `My name is ${name},

                my age is ${age} years old`;


let liEle = [name, age];

var liArr = liEle.map(function(item) {

return `<li>${item}</li>`

        });

let ulStr = `

            <ol>

${liArr.join("")}

            </ol>

        `;

console.log(ulStr);

document.write(ulStr);


// url.startsWith("字符串")

// endWith()

// ''.repeat(3) 重复3次

// padStart() padEnd() ————8 总长度 ; 7 填充字符

console.log('012'.padStart(8, 7));

数组新特性


//Array.from()——把数组或类数组转成数组,ex:arguments

function fn() {

//二者等效

let arr = Array.from(arguments);

let arr1 = [...arguments];

        }

//Array.of()——数组中的元素

console.log(Array.of(3).length);

//区别

console.log(new Array(3).length);

// //fill()——

let arr1 = [3, 2, 5, 7];

arr1.fill('a', 1, 3);

console.log(arr1);

//copyWithin()

let arr = [1, 2, 3, 4, 5, 6];

arr.copyWithin(0, 3, 6);   // 第一个参数为copy位置地序号;第二个参数start ~ end第三个参数

console.log(arr);

//find——找到第一个返回值满足条件的值

let res = [1, 2, 4, 5].find(item => {

return item > 2

        });

console.log(res);

//findIndex()——找到满足条件的下标

let res1 = [2, 3, 45, 6, 7, 8].findIndex(item => item > 10);

console.log(res1);

//some()——判断元素是否满足条件,有一个满足返回true【同理】,否则false

//every()——判断每一个元素满足条件;遇到false停止执行

let res2 = [3, 3, 4, 67, 8].some(item => item > 1);

let res3 = [3, 3, 4, 67, 10].every(item => item > 10);

console.log(res2, res3);

//typeof 变量 ——返回变量类型

// instanceof ——返回实例类型

原文地址:https://www.cnblogs.com/macro-renzhansheng/p/13050808.html