gpt4 book ai didi

javascript - 使用 Polymer 默认属性函数时是否需要将 `new Object()` 换行?

转载 作者:行者123 更新时间:2023-11-30 12:22:16 26 4
gpt4 key购买 nike

Polymer 1.0 documentation states ,

If the default value should be an array or object unique to the instance, create the array or object inside a function.

我是否需要将对象构造函数(例如 new Thing(params))包装在匿名函数中?

最佳答案

这意味着当它是一个对象引用时,库不会努力决定是否应该复制属性的值。

基础知识在 javascript 中:

var C = function() {
}
C.prototype.property = {};
var a = new C();
var b = new C();
a.property.value = "Hello world"
console.log(b.property); // object { "value": "Hello world" }

ab 共享对同一对象引用的引用。相对于:

var C = function() {
this.property = {};
}
var a = new C();
var b = new C();
a.property.value = "Hello world"
console.log(b.property); // empty object

每次实例化对象时都会创建一个新的对象引用。在 javascript 中使用对象时,始终需要注意这一点。数组实际上是对象,因此它们遵循相同的规则。

关于javascript - 使用 Polymer 默认属性函数时是否需要将 `new Object()` 换行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30629844/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com