JavaScript中的对象和数组

  • 可以使用for/in来列举JavaScript对象的所有用户定义的属性,但不能列举某些预定义的属性和方法
  • 可以使用in运算符来测试一个属性的存在性: if("x" in o) o.x = 1;
    也可以 if (o.x!==undefined) o.x = 1; 但是一个属性也可能是存在但未定义的,例如 o.x = undefined
  • 使用.和使用[]来读取属性是区别的:使用.时,属性名必须是固定的标识符,而不能是运行时计算;使用[]时,属性名是一个字符串,可以在运行时计算得到。

1. constructor属性

 

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

var d = new Date();
d.constructor == Date;

一个自定义的instanceof实现:

if((typeof o == "object") && (o.constructor == Date)){
        ...
}

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值