<html>
<head>
<script>
//对象的原型
if( typeof Object.beget != "function"){
Object.beget = function (o){
var F = function(){};
F.prototype = o;
return new F();
}
}
var stooge = {
"name":"name",
"age":2
};
var an_stooge = new Object.beget(stooge);
//更新对象的属性值,原型中的值不改变
an_stooge.name = "names";
//alert(an_stooge.name);
//alert(stooge.name);
//反射,遍历js对象的属性和对应的属性名,可以使用typeof运算符来区别是属性还是函数
for(var attr in stooge){
var t = stooge[attr]
console.log(attr,t);
}
//判断是否有某属性,hasOwnProperty不会检查原型对象中的属性,但是o.attr会追溯到原型对象中去查找属性
console.log(stooge.hasOwnProperty("name"));
console.log(stooge.hasOwnProperty("getName"));
//删除对象中的属性,有可能让原型对象中的属性浮现出来
console.log(an_stooge.name);
delete an_stooge.name;
console.log(an_stooge.name);
</script>
</head>
</html>
js 对象的基本操作
最新推荐文章于 2022-10-25 16:29:04 发布