ES6 学习笔记(一)

2018-07-16  本文已影响0人  许小花花

一、开发环境的搭建

Chrome浏览器已经支持ES6了,但是有些低版本的浏览器还是不支持ES6的语法,这就需要我们把ES6的语法自动的转变成ES5的语法
使用 Babel 来实现 ES6 到 ES5 的编译。

{
    "presets":[
        "env"
    ],
    "plugins":[]
}
{
  "name": "es6",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "build": "babel src/index.js -o dist/index.js"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "babel-cli": "^6.24.1",
    "babel-preset-es2015": "^6.24.1"
  }
}

以后就可以通过 npm run build 来进行编译了。

二、声明方式

let
const
var
比较简单,不再赘述。

三、变量的解构赋值

ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构。

let [a,b,c]=[1,2,3]
let [a,[b,c],d]=[1,[2,3],4];

若解构不成功,比如下面这种情况

let [x,y] = [1] // 右边少 x = 1,y = undefined

若是右边多,解构仍是成功的

let [foo,bar] = [foo:'aaa',bar:'bbb']   
// foo = 'aaa',bar = 'bbb'
let [baz] = [foo:'aaa',bar:'bbb']   
// baz = undefined
let [foo:bar] =[foo:'aaa',bar:'bbb'] 
// bar = 'aaa',foo:error: foo is not defined

其中,第三个语句中,foo称为匹配的模式,bar才是变量。并不存在foo这个变量。

let [foo,bar] = [foo:'aaa',bar:'bbb'] 
let [foo:foo, bar:bar] = [foo:'aaa',bar:'bbb'] 

上面语句是下面语句的简写。

上一篇下一篇

猜你喜欢

热点阅读