gpt4 book ai didi

javascript - 在创建带有属性的 JavaScript 对象时,为什么需要这段代码?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:35:24 25 4
gpt4 key购买 nike

我正在阅读有关 JavaScript 原型(prototype)的信息 here .在 Object.create header 下,编写了一些代码来说明如何创建具有原型(prototype)和某些属性的对象:

var person = {
kind: 'person'
}

// creates a new object which prototype is person
var zack = Object.create(person);

console.log(zack.kind); // => ‘person’

然后我遇到了这个:

var zack = Object.create(person, {age: {value:  13} });
console.log(zack.age); // => ‘13’

我没有传递 {age: {value: 13} },而是传递了 {age: 13},因为它看起来更简单。不幸的是,抛出了一个 TypeError。为了像这样创建这个对象的属性,为什么我们必须传递 {age: {value: 13} } 而不是仅仅传递 {age: 13}

最佳答案

因为参数是一个属性对象。您不仅在定义字段,而且在定义属性,这有点不同。例如,您可以指定“年龄”不可写。请参阅此文档:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/create

关于javascript - 在创建带有属性的 JavaScript 对象时,为什么需要这段代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20184633/

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