gpt4 book ai didi

javascript - 检查对象是否有方法,而不实例化它

转载 作者:行者123 更新时间:2023-11-28 01:21:18 25 4
gpt4 key购买 nike

function object1(){


}

object1.prototype.myMethod = function(){};

function object2(){

this.myMethod = function(){};

}

我需要编写一个 if 语句来检查任何给定对象是否具有 myMethod 函数,而无需创建所述对象的实例。这可能吗?

此:testMe.prototype.hasOwnProperty('myMethod')仅适用于object1,但对于object2将返回 false。

<小时/>

这是做什么用的?我正在尝试模拟接口(interface)。我需要在处理函数之前检查它是否尊重我的接口(interface),并且我想让用户完全自由地决定如何声明该函数。创建该函数的实例来检查其属性听起来就像打开一个写有“水”的瓶子来检查里面是否有水。

最佳答案

如果不实例化一个对象,就无法检查它是否具有某些实例方法,因为您可以在任何地方添加新方法:

var myObj= {};
...

if (myObj.newMethod) { //false
...
}

myObj.newMethod=function(){...};

if (myObj.newMethod) { //true
...
}

关于javascript - 检查对象是否有方法,而不实例化它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23224972/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com