Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/466.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何测试Javascript对象是否具有具有给定名称的方法?_Javascript - Fatal编程技术网

如何测试Javascript对象是否具有具有给定名称的方法?

如何测试Javascript对象是否具有具有给定名称的方法?,javascript,Javascript,考虑以下示例: var Container = function(param) { this.member = param; var privateVar = param; if (!Container.prototype.stamp) { // <-- executed on the first call only Container.prototype.stamp = function(string) { return

考虑以下示例:

var Container = function(param) {
    this.member = param;
    var privateVar = param;
    if (!Container.prototype.stamp) {  // <-- executed on the first call only
        Container.prototype.stamp = function(string) {
            return privateVar + this.member + string;
        }
    }
}

var cnt = new Container();
var容器=函数(param){
this.member=param;
var privateVar=param;
如果(!Container.prototype.stamp){/您可以使用

你可以用


您可以使用以下方法测试是否存在
戳记

if (cnt.stamp) ...
或者,您可以检查它是否是具有

if (typeof cnt.stamp === 'function') ...

您可以使用以下方法测试是否存在
戳记

if (cnt.stamp) ...
或者,您可以检查它是否是具有

if (typeof cnt.stamp === 'function') ...

我在一些显示
Array.hasOwnProperty('push')
的示例中看到了hasOwnProperty。但在我的示例中,它不起作用!我在一些显示
Array.hasOwnProperty('push')
的示例中看到了hasOwnProperty。但在我的示例中,它不起作用!如果在javascript控制台中单独测试它,它会起作用:
var a={b:function(){};typeof a.b
。也许f_SetEk不是一个函数?它说它是图像中未定义的标识符…不,它是函数,但在visual studio监视窗口中它没有说它是函数。但你是对的,它在浏览器中工作得很好。如果在javascript控制台中单独测试它,它确实工作:
var a={b:function(){};typeof a.b
。也许f_SetEk不是一个函数?它说它是图像中未定义的标识符…不,它是函数,但在visual studio Watch窗口中它没有说它是函数。但你是对的,它在浏览器中工作得很好。我认为visual studio Watcher被破坏了:)因为它在Firebug上工作。我认为visual studio Watcher是兄弟肯:)因为它对萤火虫有效。