ES6

ES6

[TOC]


let 不能重定义 块级作用域
const 常量,无法修改 块级作用域

箭头函数

1.参数有且只有一个可以省略圆括号

2.函数只有一句且为return时省略{}

数组展开(...):

  • function fn(a,b,...c){}           //声明收集
    
  • let arr = [12,54];
    function myFn(a,b) {
      console.log(a+b)
    }
    myFn(...arr);                    //调用展开
    

数组扩展操作

  • map

    let arr = [12,54,66.9,79,65,20];
    let result = arr.map(function(index, elem) {
      return (elem>=60)?"及格":"不及格";
    })
    console.log(result);
    
    /*
    输出:
    [ '不及格', '不及格', '不及格', '不及格', '不及格', '不及格' ]
    */
    
  • reduce

    let arr = [12,545,66.89,79,65,60];
    let result = arr.reduce(function (tmp,item,index) {
      console.log('index:' + index + "\nitem:" + item + "\ntmp:" + tmp);
      return tmp + item;
    })
    /*
    输出:
    index:1
    item:545
    tmp:12
    index:2
    item:66.89
    tmp:557
    index:3
    item:79
    tmp:623.89
    index:4
    item:65
    tmp:702.89
    index:5
    item:60
    tmp:767.89
    */
    
  • filter

//留下偶数
let arr = [12,54,66,79,65,20];
let result = arr.filter(function(item) {
  return (item%2 == 0)?true:false;
});
//简写:let result = arr.filter(item => item%2 == 0);
console.log(result)

/*
输出
[ 12, 54, 66, 20 ]
*/
  • forEach

模板字符串:${变量}:

console.log(`结果是:${result}`)   //注意不是引号  是``  反单引号

JSON的标准写法:

  1. key必须是字符串(双引号)
  2. 如果value是字符串,必须打双引号

JSON:

  • JSON.stringify JSON => 字符串(标准)

    let j = {"a":1,"b":2,"name":"maid"};
    console.log(JSON.stringify(j))
    // =>  {"a":1,"b":2,"name":"maid"}
    
  • JSON.parse 字符串(标准) => JSON

    let s = '{"a":1,"b":2,"name":"maid"}';
    console.log(JSON.parse(s))
    //  =>  { a: 1, b: 2, name: 'maid' }
    

ES7:

  • **
  • Array.includes()

ES8:

  • async/awite

ES9:

  • rest/spread
  • 异步迭代
  • Promise.finally
  • 增强正则表达式

你可能感兴趣的:(ES6)