gpt4 book ai didi

Javascript + Angular + Prototype 清除对象属性

转载 作者:行者123 更新时间:2023-11-30 16:04:13 24 4
gpt4 key购买 nike

我有点困惑,我想要一个函数来清除一个对象的所有属性,该对象的所有实例都可用。所以,我添加了一个原型(prototype) clear() 函数。这是以下代码:

(function () {

Supplier.$inject = [];

angular.module('webclient').factory('Supplier', Supplier);

function Supplier() {

Supplier.prototype = {
clear: function () {
for (var key in this) {
//skip loop if the property is from prototype
if (this.hasOwnProperty(key))
continue;


console.log("key:" + key);
this[key] = undefined;
}
},
}

return Supplier;
};
})();

所以,我希望能够清除当前 vendor 对象的所有属性。因此,如果 vendor 对象具有以下属性:

vendor ID:21,邮箱:无

我想将属性设置为未定义。我会按如下方式使用该类:

var supplier = new Supplier();

vendor .SupplierID = 21;supplier.Email = "无";

并且要将每个属性设置为未定义,我会

vendor .clear();

有什么想法吗?

谢谢

最佳答案

试试这个:(plnkr)

function Supplier() {
var supplier = function() {};
supplier.prototype.clear = function() {
for (var key in this) {
if (!this.hasOwnProperty(key))
continue;
delete this[key];
}
};
return supplier;
}

关于Javascript + Angular + Prototype 清除对象属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37273018/

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