这是一个代码示例,来自一本名为 JavaScript:The Definitive Guide,第6版的书,我不明白。
他在谈论对象。
var book ={
topic: "javascript",
fat: true
};
book.topic => "javascript"
book.["fat"] => True
book.author="flanagan"; // creates new property
book.contents= {}; // empty object*
所以我不明白的是最后一部分。他是否添加了一个名为“内容”的新属性?因为他把它称为一个对象,这让我感到困惑。
答案 0 :(得分:2)
是{}
是javascript中的空对象,它被分配给图书对象的contents属性。
Here you can see that we can use functions defined globaly on object,例如toString()
答案 1 :(得分:1)
看一下book
变量的定义方式。它是一个Object声明。
在最后一行中,我们添加一个名为contents的属性,并为其指定一个与book完全相同的对象,除了这个对象没有属性,因此是一个空对象:{}
答案 2 :(得分:1)
花括号{ }
表示法表示对象文字。
它们之间没有任何内容这一事实意味着指向空白对象(继承自基础对象)的新对象引用存储在book.contents
属性中。
答案 3 :(得分:1)
{}
创建一个空对象。现在意味着此对象可以具有与book.author="flanagan";
// Both are same
book.contents = new Object();
book.contents = { } ;
答案 4 :(得分:1)
在JavaScript中,您可以使用{}表示法创建一个名为 object literal 的对象,并且您可以在将来通过点添加您想要的对象。 strong> 功能 ,在您的第一步示例中:
var book = {topic:“javascript”,fat:true};
使用两个属性 主题 和 fat </ em> 创建book对象,然后使用 author as String和 contents 作为内部对象,正如我所说,你可以用它来创建空对象(var t = {} // example); 如果你使用
typeof book.contents // returns "object"
答案 5 :(得分:0)
创建原始book
对象的新属性,并将该属性的值设置为新的空对象。
答案 6 :(得分:0)
他正在添加一个名为contents
的对象book
的新属性,该属性本身就是一个空对象。
这是他做出改变以帮助您想象它时的样子结构。
var book = {
topic: "javascript",
fat: true,
author : "flanagan",
contents : {}
};
答案 7 :(得分:0)
<script type="text/javascript">
var book ={
topic: "javascript",
fat: true
};
book.topic = "javascript";
book.fat = true;
book.author = "flanagan"; // creates new property
book.contents = {}; // empty object*
//The curly bracket { } denotes here an object.
//will add a property contents and will contain an empty object
alert(book.contents); //it will display [object Object]
book.contents.name = 'Success Stories';
//adding propertis to the object contents
alert(book.contents.name);
/*
you can consider it as object inside object
objectOuter {
property1: value1
property2: value2
property3: objectInner {
property1: value1
property2: value2
}
}
*/
</script>