hasownproperty的使用

本文介绍了JS中hasOwnProperty方法的使用。该方法从Object继承,返回布尔值,用于判断对象是否有指定名称的属性。在IE兼容模式下,老版本IE的DOM Element和window对象可能没有此方法,可使用Object.prototype.hasOwnProperty.call来替代。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

js中 hasownproperty方法的使用

hasOwnProperty是从Object继承过来的 ,
返回值是一个布尔值,
指出一个对象是否具有指定名称的属性。

object.hasOwnProperty(proName)

ie兼容模式下 老版本的 IE 的 DOM Element 是没有 hasOwnProperty 方法的, window 对象也没有 hasOwnProperty 方法,或者低版本 不支持hasOwnProperty方法。

可以考虑用 Object 对象的 hasOwnProperty。

Object.prototype.hasOwnProperty.call(window, “property”);
Object.prototype.hasOwnProperty.call(element, “property”)。

如果 object 具有指定名称的属性,那么JavaScript中hasOwnProperty函数方法返回 true;反之则返回 false。此方法无法检查该对象的原型链中是否具有该属性;该属性必须是对象本身的一个成员。

	var s = new String("JScript");
	//所有的String对象都有一个公用的split方法
	
	print(s.hasOwnProperty("split"));//false
	
	print(String.prototype.hasOwnProperty("split"));//true


<script type="text/javascript">
        var obj = {
            a: 1,
            fn: function(){
 
            },
            c:{
                d: 5
            }
        };
        console.log(obj.hasOwnProperty('a'));//true
        console.log(obj.hasOwnProperty('fn'));//true
        console.log(obj.hasOwnProperty('c'));//true
        console.log(obj.c.hasOwnProperty('d'));//true
        console.log(obj.hasOwnProperty('d'));//false, obj对象没有d属性
        var str = new String();
        console.log(str.hasOwnProperty('substring'));//false
        console.log(String.prototype.hasOwnProperty('substring'));//true
    </script>

在这里插入图片描述
原型上:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值