模板字符串: 简化字符串的拼接
#模板字符串必须用``大点(英文状态下的波浪线键)
#变化的部分使用${xx}定义
它的好处在于当从一个网站中提取出来一个很长的字符串,要在这个字符串中标记=后面的内容为可变内容时只需在整个字符串两端加上大点,然后再字符中划取要标记的字符,然后直接给他们加上${}就行了,这个也可以用于字符产的拼串,简化了操作。
对象的简写方式
#同名的属性可以只写一个
再一个函数中,同名的属性、键值对可以省略不写,只写一个
let username = 'kobe';
let age = 40;
let obj = {
username, #username:username,
age # age:age
}
在函数中的简写方式:
旧:getName: function(){
return this.username;
}
新: getName(){
return this.username;
}
箭头函数
let fun = () =>console.log('我是箭头函数‘)
=>的左边
# = 右边整体是箭头函数,因为有=>
# =>左边()表示函数的形参,需要传入参数时往()中加入
# =>右边是函数要执行的函数体
# 没有形参的时候箭头函数的()不能省略
#在只有一个形参的时候箭头函数的()可以省略:let fun2 = a =>console.log(a); fun2()
# 有两个及两个以上的形参的时候()不能省略
=>的右边
#函数体只有一条语句或是表达式的时候{}可以省略,会自动返回语句执行的结果或者是表达式的结果;加上{}会屏蔽掉自动返回,需要手动添加{return....}来返回
#函数体有两条及以上的语句时,{}不能省略,同时要注意在{}内手动加入return
使用场景:多用来定义回调函数
箭头函数的特点:
1.简洁
2.箭头函数没有自己的this 它的this由定义的时候所处的对象就是它的this
3.扩展理解:箭头函数的this看外层是否有函数,如果有,外层函数的this就是内部箭头函数的this,如果没有,则this是window
三点运算符
三点运算符也叫扩展运算符 三点指的是'...' 三点与一个参数组成可变参数,放在形参的最后面,如果可变参数后面加一个普通参数的话会报错。
arguments 用来收集形参的伪数组(伪数组展开其属性后没有数组的一般方法如append、pop之类;callee是arguments的属性,它指向所属函数本身,调用它的话可以实现递归。
用途:rest(可变)参数,用于替换arguments,但比arguments灵活,只能是最后部分形参参数
在...arg前面每有一个形参,最后落到...arg中的数组实参的个数就少一个,可以把任意数量的参数堆入数组中。可以动态的设置参数的个数了。
它还可以用于数组的扩展,设两个数组let arr = [1,2] let arr1 = [4,5,6,7] arr = [1,...arr1,2] //[1,4,5,6,7,2] 这样就实现了扩展
网友评论