JS 本地属性与继承属性
2024-10-21 06:05:27
判断是否拥有某种属性
1、in 运算符
var
obj = {name:
'jack'
};
alert(
'name'
in
obj);
// --> true
alert(
'toString'
in
obj);
// --> true
2、hasOwnProperty方法
var
obj = {name:
'jack'
};
obj.hasOwnProperty(
'name'
);
// --> true
obj.hasOwnProperty(
'toString'
);
// --> false
原型链上继承过来的属性无法通过hasOwnProperty检测到,返回false。
需注意的是,虽然in能检测到原型链的属性,但for in通常却不行。
function Person(name){
this.name = name;
}
Person.prototype = {
type : 'human'
};
var p = new Person("xx");
alert(p.hasOwnProperty('type'));//false
p.type = 'ren';
alert(p.hasOwnProperty('type'));//true
总结:对象的属性无法修改其原型中的同名属性,而只会自身创建一个同名属性并为其赋值。
最新文章
- spring官网下载
- Android Handler机制
- Fiddler 4 抓包
- Asp.Net MVC中Controller与View之间传递的Model
- ClippingNode实现新手引导高亮裁切
- .Net大文件上传(转--待验证)
- 【BZOJ】【1055】【HAOI2008】玩具取名
- ResultSet几种类型的区别
- Android 之 内存管理-查看内存泄露(三)
- tabBar隐藏与显现 hidesBottomBarWhenPushed
- windows 不能在 本地计算机 启动 Apache
- C#基础总结之Attribute
- ios基金会-XCode温馨提示
- 【原创】大叔问题定位分享(29)datanode启动报错:50020端口被占用
- Ansa 自动加载用户脚本设置
- Linux内核第六节 20135332武西垚
- Daily Scrum 12.8
- php的语法
- jquery源码学习
- Spring对象依赖关系处理
热门文章
- java 基础 --int 和Integer的区别
- Delphi 的绘图功能[8] - TextOut、TextWidth、TextHeight
- 使用js 复制 文字到剪贴板
- FZU 1492 地震预测(链表)
- 【bzoj1775】[Usaco2009 Dec]Vidgame 电视游戏问题 dp
- 【题解】CF#229 E-Gifts
- 【刷题】BZOJ 4827 [Hnoi2017]礼物
- [洛谷P1341]无序字母对
- P2805 [NOI2009]植物大战僵尸(最小割+拓扑排序)
- [九省联考2018]IIIDX 贪心 线段树