繁体   English   中英

带花括号的Es6类

[英]Es6 Classes with curly braces

我已经在使用es6的代码库中看到了这一点,但还不完全理解为什么会有大括号。 我还没有在网上看到任何有关此事的例子。 有什么想法,例子吗?

let aNewElement = new OldElement({theObject: 1})

因为它在类的实例中使用对象(关联数组)作为参数。

如同:

let param = { theObject: 1 };
let aNewElement = new OldElement(param);

您可以像常规函数一样将参数传递给es6类的构造函数。 它们可以是一个简单的值,例如数字,字符串,但也可以是一个对象,甚至是另一个函数。 在显示的示例中,您正在使用对象文字符号{theObject: 1}传递对象。 因此,在该类中,您可以使用该对象并进行类似将其分配给属性的操作。 例如:

 class OldElement{ constructor(someArg) { // this expects the argument to be an object with a 'theObject' property // so you can use it any way you want. console.log(someArg.theObject) // log it this.obj = someArg.theObject // or save it to a property } } // pass in an object to the constructor let aNewElement = new OldElement({theObject: "hello"}) // see the property we saved: console.log(aNewElement.obj) 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM