javascript权威指南--第七章

来源:互联网 发布:怎么在淘宝买电棒 编辑:程序博客网 时间:2024/05/16 09:51

第七章----对象和数组

对象

例子如下:

var book={};book.title="javascript";book.chapter1 = new Object();book.chapter1.title = "javascript introduction";book.chapter1.page ='4';book.chapter2 ={title:"javascript structure",page:22};console.log(JSON.stringify(book))


结果:{"title":"javascript","chapter1":{"title":"javascript introduction","page":"4"},"chapter2":{"title":"javascript structure","page":22}}
需要注意的是:可以通过将一个值赋值给对象的新属性来创建它。

属性的枚举

用for/in遍历对象的属性:

上面的例子:

var book={};book.title="javascript";book.chapter1 = new Object();book.chapter1.title = "javascript introduction";book.chapter1.page ='4';book.chapter2 ={title:"javascript structure",page:22};for(var key in book){console.log(key,',',book[key])}//输出属性名字,属性值



检查属性的存在性

if(book.page===undefined){ book.page = 20} console.log(book.page)//20

删除属性

delete book.page; console.log(book.page)//undefined


作为关联数组的对象

var addr='';custom={address0:1,address1:1,address2:1,address3:1,};for(var i=0;i<4;i++){   addr +=custom["address"+i]}
其实就是用[]来存取对象的属性,尤其用于对象的属性名师未知的情况。


通用的Object属性和方法

1.constructor

每个对象都有一个constructor属性,它引用了初始化这个对象的构造函数

var d = new Date();console.log(d.constructor == Date)//true
构造函数定义了一新的对象,那么constructor可以用户确定一个对象的类型。

var d = new Date();console.log(d.constructor == Date);//trueconsole.log(d instanceof Date);//true
2.toString()方法

当javascript需要将一个对象转换成字符串的时候调用此方法。
3.toLocaleString()方法

Object的方法,返回对象的一个本地化字符串表示。

4.valueOf()方法

当javascript需要将对象转换成基本数据类型时调用。

5.hasOwnProperty()方法

判断这个字符串所指定的属性是不是非继承的,如果是返回true。

var o ={}; o.hasOwnProperty('undef') ;/l/false o.hasOwnProperty('toString');//falseMath.hasOwnProperty('cos')//true
6.propertyIsEnumerable()方法

如果这个字符串所指定的属性不是非继承的,同时,这个属性是枚举的,返回true。

注意:用户自定义的属性,都是可以枚举的,不能枚举的属性通常是继承的。

var o ={x:1};o.propertyIsEnumerable("x");//trueo.propertyIsEnumerable("y");//falseo.propertyIsEnumerable("valueOf");//false
7.isPrototypeOf()

如果isPrototypeOf()方法所属的对象是参数的原型对象,返回true。

数组

数组是一个有序的、值得集合。

数组的方法:

1.join()

2.reverse()

3.sort()

4.concat()

5.slice()

6.splice()

7.push()/pop()

8.shift()/unshift()


原创粉丝点击