1.计算属性名
在es6中对字面量进行可增强,可以对属性和方法名简写,以及可以使用计算属性名。
格式: [key]:value
const age = 'age'
const obj = {
age:18,
['age']:18,
[age]:18
}
在 redux就有使用这种语法:
2.闭包
闭包并不只是像下面的例子这样形成局部作用域的情况下使用:
function getName(name){
retrun function(){
console.log(name)
}
}
某种意义上来说这也是闭包
var name = 'xxx' //用 const ,let 定义都可以
var age = 18
function getName(){
console.log(name,age)
}
getName()
闭包简单来说就是 函数可以访问外部作用域的变量。
如果没有闭包的话就只能向其他语言那样,在调用时把变量传过去
var name = 'xxx'
var age = 18
function getName(name,age){
console.log(name,age)
}
getName(name,age)
3.原生js中 可以通过id直接监听事件,不用先获取id
如果dom元素的id名称不和js内置属性或全局变量重名的话,该名称自动成为window对象的属性,所以可以直接用来操作dom。
<button accept id="button">识别</button>
button.addEventListener('click',()=>{
})