随手小记(es6)
2024-10-11 03:59:29
在学习前辈阮一峰大神写的《ECMAScript入门》一书的过程中,第九章中讲到对象扩展时,第一条我就有点看不懂
ES6允许直接写入变量和函数,作为对象的属性和方法。这样的书写更加简洁。 var foo = 'bar';
var baz = {foo};
baz // {foo: "bar"} // 等同于
var baz = {foo: foo};
当时我就没想太多,就这样过去了,结果在学习react时碰到了一个东西,研究之后让我理解了上面的代码:
在react的Lifting State Up中,它的例子用es6的语法写了一个类,继承React.Component,在构造函数中给出了状态,然后自己重写了一个控制函数:
handleFahrenheitChange(value) {
this.setState({scale: 'f', value});
}
当时就好奇这个setState里面的参数到底是什么,研究了一下明白了,请看第一段代码:声明变量foo='bar',然后声明一个变量baz引用一个对象,这个对象里面只有一个foo属性,没有值,这就是es6的新增语法,标题是《属性的简洁表示法》,真是当时看不懂,看懂了觉得自己好傻这都看不懂。
总结:es6的属性里,对象中如果给了属性名却没有给属性对应的值,则根据作用域链(之前我写过的一篇博客)查找该属性的同名变量,并将其值赋给该对象的该属性;
最新文章
- imx6 usb otg config 配置
- 【Android学习】数据传递三种方式
- 【温故而知新-Javascript】比较 undefined 和 null 值
- EventHandler委托与自定义委托
- php文字水印和php图片水印实现代码
- iOS设置某个界面强制横屏,进入就横屏
- javascript面向对象思想2
- 利用KVC使用自定义的控件
- 福州大学软件工程1916|W班 第6次作业成绩排名
- Java高级应用简笔
- UOJ #76 【UR #6】懒癌
- JavaScript -- Anchor
- Kafka消息系统基础知识索引
- IIS-网站发布之后访问HTTP 错误 403.14 - Forbidden
- 【转】Linux删除文件未释放空间问题处理
- Python DB
- Elasticsearch NEST使用指南:映射和分析
- 北京Uber优步司机奖励政策(3月30日)
- 使用dva框架的总结
- ASP.NET网站性能提升的几个方法