验证对象是否为null Javascript/Angularjs

Verify if object is null Javascript / Angularjs

本文关键字:Javascript Angularjs null 对象 是否 验证      更新时间:2023-09-26

这是我的代码:

function getMelhorBloco(tamanho){
    var blocoMelhor = {};
    var testeEntrouBloco = true;
            for(var i = 0; i < $scope.blocos.length; i++) {
                if($scope.blocos[i].estado == "Livre") {
                    if(tamanho < $scope.blocos[i].tamanhoTotal) {
                        if(testeEntrouBloco) {
                            blocoMelhor.indice = $scope.blocos[i].idBloco;
                            blocoMelhor.tamanho = $scope.blocos[i].tamanhoTotal;
                            testeEntrouBloco = false;
                        } else {
                            if($scope.blocos[i].tamanhoTotal < blocoMelhor.tamanho) {
                                blocoMelhor.indice = $scope.blocos[i].idBloco;
                                blocoMelhor.tamanho = $scope.blocos[i].tamanhoTotal;
                            }
                        }
                    }
            }
        }
    return blocoMelhor;
}

我试图检查我的对象"blocoMelhor"是否为空。

我试过

if(blocoMelhor == null){} 
if(blocoMelhor == undefined){} 
if(blocoMelhor ===null){} 

方法:

function isEmpty(obj){
    for(var key in obj) {
        if(obj.hasOwnProperty(key)){
            return false;
        }
        return true;
    }
}

我打印了"blocoMelhor"的值,控制台给我的是:Object { }

有什么建议吗?

尝试以下

var blocoMelhor;
if(!blocoMelhor){ 
do something for null
} 

{}的初始化意味着您创建一个对象

您是否尝试过使用类似的东西

if (!blocoMelhor){ //do something } 

我认为这是最好的办法。

我用对象和作品的属性进行了验证:

var returnOfGetMelhorBloco = getMelhorBloco(tamanho);
if(returnOfGetMelhorBloco.indice == undefined){
//the object is null
} else {
//the object is not null
}