/*
* 创建一个对象
/
// var obj = new Object();
/
* 使用对象字面量来创建一个对象
* 这样创建的对象和使用vew Object()功能是一样的;
* 也可以添加属性名和属性值
*
* 使用对象字面量,可以在创建对象时,直接指定对象中的属性
* 语法:
* {属性名:属性值,属性名:属性值,...}
*/
var obj = {};
obj.name = '沙和尚';
console.log(obj);
var obj2 = {
name: '白龙马',
age: 100,
gender: '公的'
};
/*
* 打印结果:
* Object { name: "白龙马", age: 100 }
* 这种方式能简洁代码,清晰辨识。属性名和属性值中间一定要逗号分隔,然后才能写下一个属性
* 对象字面量的属性名可以加引号也可以不加,建议不加
*
* 属性名和属性值是一组一组的名值对结构
* 名和值之间使用:连接,多个名值对之间使用,隔开
* 如果一个属性之后灭有其他的属性了,逗号就不要写了
*
* 在对象中可以添加一个属性值为大括号{}
* 语法:
* var a = {
* 属性名:属性值,
* 属性名:属性值
* 属性名:{
* 属性名:属性值,
* 属性名:属性值
* }
* }
* 这种写法可以无限嵌套,但是建议不要无限嵌套,因为在读取的时候会很麻烦、很费时间
*/
console.log(obj2);
var obj3 = {
name:'如来佛',
age:100,
shouxia:{
name:'观世音',
age:90
}
};
//打印全部对象属性
/*
* 打印全部对象属性结果:
* Object { name: "如来佛", age: 100, shouxia: {…} }
* 其中,shouxia这个属性名的值是一个大括号里面有三个点,这说明大括号里还有值,而且是一个对象
*/
console.log(obj3);
//打印某一个属性对象
/*
* 打印属性对象结果:
* Object { name: "观世音", age: 90 }
* 通过打印shouxia这个属性名得出来的结果是一个对象,
* 实验证明对象和对象是可以嵌套的
* 如果还想读取这个内部对象内的属性怎么办?
* 可以在属性名后面加一个点.然后写上你要读取的属性名就行了,
* 内部对象读取属性语法:
* console.log(obj3.shouxia.name);
*/
console.log(obj3.shouxia);