对象表示方式
1、第一种方式:使用new操作符后跟Object构造函数
var person = new Object();
person.name = 'Nicholas';
person.age = 29;
2、对象字面量表示法
var person = {name:'Nicholas',age:29 }
*:在age属性的值29的后面不能添加逗号,因为age是这个对象的最后一个属性。在最后一个属性后添加逗号,会在 ie7及更早版本和opera中导致错误。(验证过:opera中也没啥问题),所以这个随自己
表示优劣
当需要向函数传入大量可选参数点情形。一般来来讲,命名参数虽然容易处理,但在多个可选参数点情况下就会显示不够灵活。最好的做法是对那些必需值使用命名参数,而使用对象字面量来封装多个可选参数
function displayInfo(args){var output = '';if(typeof args.name == 'string'){output = 'Name: ' + args.name + ' ';}if(typeof args.age == 'number'){output = 'Age: ' + args.age + ' ';}alert(output); }displayInfo({name: 'Nicholas',age: 29 }); displayInfo({name:'Greg' });
访问对象方式
访问对象时有两种表示法,点表示法和方括号表示法来访问对象的属性
alert(person['name']); //Nicholas alert(person.name); //Nicholas
注意:
1、方括号表示法应该将访问的属性以字符串的形式放在方括号中
2、从功能上没有任何区别。但方括号的主要优点就是可以通过变量来访问属性
var propertyName = 'name'; alert(person[propertyName]); //Nicholas person['first name'] = 'Nicholas';
由于'first name'中包含一个空格,所以不能使用点表示法来访问它。然而,属性名中时可以包含非字母非数字点,这时候就可以使用方括号来访问它们
通常,除非必要使用变量来访问属性,否则我们建议使用点表示法