gpt4 book ai didi

javascript - 检查一个 JavaScript 对象是否已经被实例化

转载 作者:行者123 更新时间:2023-11-30 07:16:39 27 4
gpt4 key购买 nike

我正在开发一个小游戏,我会像这样实例化一些对象:

this.polyfills = new Application.Polyfills(this.options);

关键是那段代码在点击(页面上的某个元素)时被调用了很多次,我不想每次都实例化该对象,因为它已经完成了它的目的。我试过这样的事情:

this.polyfills = window.Application.Polyfills || new Application.Polyfills(this.options);

但是上面的方法显然行不通:)那么应该怎么做才能做到我刚才描述的事情呢?

编辑:点击时实例化的对象(我称之为类)是这个:

Application.Level = function(_level, _levels, callback) {

this.helpers = (this.helpers instanceof Application.Helpers) ? true : new Application.Helpers();

var self = this,

_options = {
levels : {
count : _levels,
settings : (_level === undefined || _level === '') ? null : self.setLevelSettings(_level, _levels),
template : 'templates/levels.php'
},

api : {
getImages : {
service : 'api/get-images.php',
directory : 'assets/img/'
}
}
};

this.options = new Application.Defaults(_options);
this.polyfills = (this.polyfills instanceof Application.Polyfills) ? true : new Application.Polyfills(this.options);

return this.getImages(self.options.api.getImages.service, { url : self.options.api.getImages.directory }, function(data){
return (typeof callback === 'function' && callback !== undefined) ? callback.apply( callback, [ data, self.options, self.helpers ] ) : 'Argument : Invalid [ Function Required ]';
});
};

其中包含通过 prototype 定义的属性集合。所以我尝试做的事情可能无法实现?!

最佳答案

那呢?

this.polyfills = this.polyfills || new Application.Polyfills(this.options);

关于javascript - 检查一个 JavaScript 对象是否已经被实例化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13905302/

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