gpt4 book ai didi

javascript - 在类中再次将属性设置为 null

转载 作者:行者123 更新时间:2023-12-03 03:45:27 25 4
gpt4 key购买 nike

我有一个名为MapFilter的类,它有条件地创建一个对象数组。

创建该类时,名为 postCodeFilter 的属性会自动设置为 null。当使用具有此初始空值的类时,逻辑工作正常:

MapFilter.prototype.filterByPostcode = function(res){

var newRes = [];

console.log(this.postcodeFilter);
if(typeof this.postcodeFilter !== 'undefined') {

for( var i = 0; i < res.length; i++ ) {

if(res[i].postcode == this.postCodeFilter) {

newRes.push(res[i]);

}

}

} else {

newRes = res.slice();

}

return newRes;

};

当它最初运行调用此方法的方法时,它将运行 else block 中的内容

但是

postcodeFilter 设置值后,我无法再次将其设置回 nullundefined

我尝试了以下方法,但没有成功

delete this.serviceFilter;
this.serviceFilter = null;
this.serviceFilter = undefined;

我尝试在 MapFilter 类的实例上执行相同的操作,但无济于事

如何将类的属性再次重置为 nullundefined

最佳答案

    function MapFilter (){
this.postcodeFilter=null
}

MapFilter.prototype.filterByPostcode = function(){

console.log(this.postcodeFilter);
if(this.postcodeFilter !== null) {

console.log('is bull')



} else {
console.log('is null')

}

}

var test = new MapFilter()

test.filterByPostcode()
test.postcodeFilter='bull'
test.filterByPostcode()

不要使用null类型它不会返回null

if you calling prototype inside function

不要使用this.postcodeFilter调用,尝试使用test.postcodeFilter之类的实例名称

关于javascript - 在类中再次将属性设置为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45410278/

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