js对象

对象是js的基本数据类型。对象是一种复合值:它将很多值(原始值或其他对象)聚合在一起,可通过名字访问这些值。对象也可以看做是属性的无序集合,每个属性都是一个名/值对。
(1)创建对象
var point = {a:1,b:2};
var a = new Object();
var o = Object.create({a:1,b:2});
Object.create()是一个静态函数,不是提供给某个对象调用的方法。使用它的方法为传入所需的原型对象。
(2)属性的查询和设置
可以通过点(.)或方括号([])运算符来获取属性的值。运算符左侧应该是一个表达式,它返回一个对象。对于点(.)来说,右侧必须是一个以属性名称命名的简单标识符。对于方括号([])来说,方括号内必须是一个计算结果为字符串的表达式,这个字符串就是属性的名字。
var counts = list.counts;  //获得list的counts属性
var barcode = inputs[barcode];  //获得inputs的barcode属性
(3)删除属性
delete运算符可以删除对象的属性。它的操作数应该是一个属性访问表达式。delete只是断开属性和宿主的联系,而不会去操作属性中的属性。不能删除那些可配置性为false的属性。
delete list.counts;  //删除list的counts属性
delete inputs[barcode];  //删除inputs的barcode属性
(4)检测属性
可以通过in运算符、hasOwnPreperty()和propertyIsEnumerable()方法来完成。
var list = {counts:1}
"counts" in list;  //true:"counts"是list的属性
list.hasOwnPreperty("counts");  //true:list有一个自有属性counts
list.propertyIsEnumerable("counts")  //true:list有一个自有属性counts
(5)遍历查询
可以使用for/in来遍历
var list = {a:1,b:2,c:3};
for(p in list)
console.log(p)  //结果为a,b,c
console.log(list[p])  //结果为1,2,3

猜你喜欢

转载自r8711274r.iteye.com/blog/2384657