ES6 特性(一)

一. let

1.var没有严格的作用域,let有着严格的作用域

2.同一个变量var可以声明多次,重复声明,而let只能声明一次,如果多次声明编译报错

3.var能进行变量的提升(提前使用一个没有声明的变量,变量为undefined),let不能进行变量的提升(提前使用一个没有声明的变量,直接报错)

二.解构表达式

1.定义一个数组将数组中的值分别赋给多个变量

let arr=[0,1,2]  可以直接 let [a,b,c] =arr

2.常量的复制

const person={

name: zhangsan

age: 18

}

const [name,age] = person  或

const [name:name,age:age] = person可以直接复制给name和age两个常量

三.字符串的特性

let str = "hello.vue"

str.startsWith("hello")

str.endsWith("vue")

str.includes("llo")

字符串模板:之前声明多行字符串需要进行字符串的拼接,现在可以使用 `` 包裹就行了

4.字符串中使用${}插入变量,要使用``否则使用+运算符时就成字符串的拼接,其中可以使用function

例:let [name,age] = person ;let str=我是${name},年龄${age+10}`

function fun(){

return "这是函数";

}

let str=我是${fun()}`

四.函数的优化

1.参数的默认值

function fun(name,age = 12){

}

2.不定参数

function fun(...values){

}

3.箭头函数(箭头函数中使用this是获取不到值的,直接用对象.属性就能获取值)

var sum =(a,b) => {a+b};

例:箭头函数+解构

const person={

name: zhangsan

age: 18

}

var fun = ({name}) => {console.log(name)}

调用fun(person)

你可能感兴趣的:(ES6 特性(一))