ECMAScript 6基础知识笔记

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lihuijuan_1/article/details/84836398

es6 简介

1. ECMAScript与JavaScript的关系

  Netscape公司将javascript提交给标准化组织ECMA,次年发布了规定浏览器脚本语言的标准,使用的语言是ECMAScript,

2.Babel转码器:

  使用es6的语言编码,可以转为es5的语言,防止现有环境不支持 。

例如:
 input.map(item=>{item+1});
 
 input.map(function(item){
 return item+1;
 })
1,npm i --save-dev babel-cli
2,改写package.json。
{
// ...
"devDependencies": {
 "babel-cli": "^6.0.0"
},
"scripts": {
 "build": "babel src -d lib"
},
}
3,转码: npm run build

3.let ,const,var

let的用法类似var,但是声明的变量只在代码块内有效

var a=[];
for(let i=0;i<10;i++){
   a[i]=i;
}
a[8]; //8
如果是var 的话,代表所有的i都指向同一个i,输出的是最后一轮的i的值10。
而let只在本轮循环有效,每循环一次都是一个新的变量。
var会有变量提升,值为undefined,let不存在,会报错。

不允许重复声明

// 报错
function func() {
 let a = 10;
 let a = 1;
}

const声明一个只读变量,一旦声明,常量的值就不能改变,如果只声明不赋值就会报错,也不可重复声明。
const的作用域和let一样,也是不存在变量提升

4.声明的方式6种

var 、function、 let 。const、 import、 require
import shim from “…/xxx”

5.Symbol

symbol是一种新的原始数据类型,表示独一无二的值,undefined,null,string,number,boolean

set和map

set类似于数组,但是成员都是惟一的

使用
   const s = new Set();
      [1,2,3,3,3,5,6].forEach(x=>s.add(x))
      for(let i of s){
          console.log(i)  //1,2,3,5,6
      }
添加
      const s2=new Set([1,2,3,3,3,5,6])
      const s3 = new Set(document.querySelectorAll('div'));
      s3 .size // 56
Set也提供了一种 ** 去除数组的重复成员 ** 方法
[...new Set(array)]
  • set的实例属性
     set.prototype.constructor
     set.prototype.size
    
  • set的方法
     add(value):添加某个值,返回 Set 结构本身。
               s.add(1)              
     delete(value):删除某个值,返回一个布尔值,表示删除是否成功。
               s.delete(1)
     has(value):返回一个布尔值,表示该值是否为Set的成员。
               s.has(1)       
     clear():清除所有成员,没有返回值。
    

猜你喜欢

转载自blog.csdn.net/lihuijuan_1/article/details/84836398