说我希望对象是这样的:
var Book = {
title: "the catcher in the rye",
price: "80.98",
characters: [{name: "holden caulfield", age: 16, height:"6.2"},
{name: "phoebe caulfield",age:13, height: "5"}]
};
Run Code Online (Sandbox Code Playgroud)
EDITED
问题:characters数组是通过逐个添加一个字符来构建的.如何确保名称,年龄和身高属性的定义如上所述.
有什么效果?
Book.characters.add({name: "phoebe caulfield",age:13, height: "5"});
Run Code Online (Sandbox Code Playgroud)
我希望能够以编程方式定义它,即向对象添加属性,而不是像这样定义它.
这可能吗?
您可以在动态代码(而不是静态声明)中执行此操作:
var Book = {};
Book.title = "the catcher in the rye";
Book.price = "80.98";
Book.characters = [];
Book.characters.push({name: "holden caulfield", age: 16, height: "6.2"});
Book.characters.push({name: "phoebe caulfield", age: 13, height: "5"});
Run Code Online (Sandbox Code Playgroud)