es6语法

2017-10-09  本文已影响0人  Undefined_C

1.let和var的区别:let声明的变量只有所在的代码块有效。

if(true){

var fruit="apple" //let fruit="apple"

}

console.log(fruit)

2.const声明一个常量(恒量)。一旦声明,常量的值就不能改变。const一旦声明变量,就必须立即初始化,不能留到以后赋值。

const arr=[];

arr.push("apple");

arr.push("banana");

arr=[]

console.log(arr);

3.解构赋值

3.1>“模式匹配”为变量赋值

function breakfast() {

return ['dessert','drink','fruit'];

}

var list=breakfast();

a=list[0],b=list[1],c=list[2];

console.log(a,b,c);

let [a,b,c]=breakfast();

console.log(a,b,c)

3.2>不完全解构,即等号左边的模式,只匹配一部分的等号右边的数组。

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

a // 1

b // 2

d // 4

4.使用解构语法 我们可以解构对象

function breakfast() {

return {dessert:"蛋糕",drink:"饮料",fruit:"水果"}

}

let {dessert:a,drink:b,fruit:c}=breakfast();

console.log(a,b,c)

5.使用字符模板

let fruit="水果",dessert="蛋糕";

let breakfast="今天的早餐是"+fruit+"和"+dessert+"!";

console.log(breakfast)

let breakfast=`今天的早餐是${fruit}和${dessert}!`

console.log(breakfast)

//使用字符模板,很容易把一行显示成多行

let breakfast=`今天的早餐是

${fruit}和${dessert}!`;

console.log(breakfast);

6.带标签的模板字符串

let dessert="蛋糕",

drink="饮料";

let breakfast=kitchen`今天的早餐是\n${dessert}与${drink}!`

function kitchen(strings,...value) { //标签函数

//strings参数里还有raw,就是原始的没有处理过的字符

console.log(strings,value)

}

7.默认参数

function breakfast(dessert="蛋糕",drink="饮料") {

return `今天的早餐是${dessert}和${drink}!`

}

console.log(breakfast())

console.log(breakfast("包子","啤酒"))

8.判断字符串里是否包含其他字符

let dessert="蛋糕",

drink="饮料";

let breakfast= `今天的早餐是${dessert}和${drink}!`

console.log(breakfast.startsWith("今天"))

console.log(breakfast.endsWith("!"))

9.展开参数

上一篇下一篇

猜你喜欢

热点阅读