一 . let和const都是块级作用域
ES6以前, var关键字声明变量. 无论声明在何处, 都会被视为声明在函数的最顶部(不在函数内即在全局作用域的最顶部).
var 为全局变量 或者函数全局变量.
ES6中 let 表示变量、const 表示常量, let和const都是块级作用域, 说白了 {}大括号内的代码块即为let 和 const的作用域
打印0~9可以这样写了
for (let i = 0; i < 10; i++) {
func.push(function() {
console.log(i)
})
}
funcs.forEach(function(func) {
func()
})
二. ES6反引号(``)搞定换行, 推荐使用
// es6
const t = `<h3>
<span>hello world</span>
<h3>`
三. 箭头函数
箭头函数特点
- 创建函数不需要function关键字
- 省略return
- 继承当前上下文的 this 关键字
//例如:
[1,2,3].map( x => x + 1 )
//等同于:
[1,2,3].map((function(x){
return x + 1
}).bind(this))
四. 对象添加方法
ES6省略冒号与 function 关键字,简洁
render(){
var text = this.state.liked? ' like ':' don\'t like ';
return (
<div>
<button onClick={this.handleClick}>you {text} it, click to change it!</button>
</div>
)
};