zoukankan      html  css  js  c++  java
  • 随手小记(es6)

    在学习前辈阮一峰大神写的《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的属性里,对象中如果给了属性名却没有给属性对应的值,则根据作用域链(之前我写过的一篇博客)查找该属性的同名变量,并将其值赋给该对象的该属性;

  • 相关阅读:
    LWIP的底层结构(物理层)
    Source insight 支持汇编
    Camera Vision
    i2c-tools的使用方法及举例
    浅析C语言中strtol()函数与strtoul()函数的用法
    CF540C Ice Cave
    CF540B School Marks
    hdu5122 K.Bro Sorting
    hdu1013 Digital Roots
    蓝桥杯 算法提高 递推求值
  • 原文地址:https://www.cnblogs.com/dadSheng/p/6434139.html
Copyright © 2011-2022 走看看