【JS--基础--对象】--基础用法(通用的Object属性和方法)

来源:互联网 发布:linux 3.0.35 pl2303 编辑:程序博客网 时间:2024/06/06 02:36

1.创建对象(数组也是对象)

方法1:new Object()

方法2:对象直接量法 eg:var o={name:'bo',age:5}


2.对象属性

 属性还是一个对象


3.属性的引用

方法1:标识符法(引用时,属性必须是已定义或申明的,且不可对属性标识直接操作)

o.name

方法2:数组法(属性名可动态生成,并且可直接操作属性名--原因:此时属性名是字符串形式的,字符串是js的一种数据类型,可在运行过程中操作并创建它们--灵活性强)

o['name']o['phone']='434343'   //新创建一个属性

var o={'ad1':'xxx','ad2':'xxx','ad3':'xxx'}var addr=''for(i=0;i<3;i++){addr+=o['ad'+i]+'\n'   //}

4.检查属性的存在性

var o={name:'bo',age:5}if ('name' in o) {...}


5. 删除属性

delete o.name;


6. 通用的Object属性和方法

constructor属性

它引用了初始化这个对象的构造函数。如 
var d = new Date();
d.constructor==Date;//true
constructor属性可以用来确定对象的类型。不过通常用instanceof运算符。如  if((typeof o == 'object')&& (o instanceof Date))

toString()方法

当js需要把一个对象转换为字符串的时候,它会调用该对象的toString()方法。默认的toString()没啥用,得自己定制。
 toLocaleString()方法,这是返回对象的一个本地化字符串表示。Object所定义的默认的 toLocaleString()并不会本地化自己。它总是返回与toString()完全相同的内容。也得自己定制。

valueOf()方法
当js需要把一个对象转换成数字,它才会调用。可以定制。


hasOwnProperty()

如果对象用一个单独的字符串参数所指定的名字来本地定义一个非继承的属性,它就返回true


propertyIsEnumerable()

是否为可枚举的属性

eg: o.propertyIsEnumerable('name')


isPrototypeOf()   ??

对象是否为参数的原型对象



原创粉丝点击