ES6中检查对象是否为空

10 浏览
0 Comments

ES6中检查对象是否为空

我需要检查状态是否已经批准,所以我会检查它是否为空。最有效的方法是什么?

回应

{

"id": 2,

"email": "yeah@yahoo.com",

"approved": {

"approved_at": "2020"

},

"verified": {

"verified_at": "2020"

}

}

代码

    const checkIfEmpty = (user) => {
    if (Object.entries(user.verified).length === 0) {
      return true;
    }
    return false;
  };

0
0 Comments

ES6 (ECMAScript 2015) 是 JavaScript 的一个版本,引入了许多新的语法和功能。其中一个问题是如何检查一个对象是否为空。下面的代码提供了一个解决方法:

const isEmpty = (obj) => {
    for(let key in obj) {
        if(obj.hasOwnProperty(key))
            return false;
    }
    return true;
}

上述代码定义了一个名为 `isEmpty` 的函数,它接受一个参数 `obj`,用于传入要检查的对象。函数使用 `for...in` 循环遍历对象的所有属性。在循环中,使用 `hasOwnProperty` 方法检查对象是否具有该属性。如果对象具有属性,则函数返回 `false`,表示对象不为空。如果循环结束后没有返回 `false`,则函数返回 `true`,表示对象为空。

使用时,可以按照以下方式调用 `isEmpty` 函数:

if(isEmpty(user)) {
    // user is empty
} else {
    // user is NOT empty
}

这段代码将 `user` 对象作为参数传递给 `isEmpty` 函数。根据函数的返回值,可以判断 `user` 对象是否为空。如果 `user` 对象为空,将执行 `// user is empty` 的代码块,否则将执行 `// user is NOT empty` 的代码块。

通过以上的方法,我们可以在 ES6 中检查一个对象是否为空。

0
0 Comments

在ES6中,有时候我们需要检查一个对象是否为空。当我们确定一个对象是基于JSON模式的时候,我们可以使用以下方法来检查一个对象是否为空:

const checkIfEmpty = (user) => {
    return !!(user && user.verified);
};

在上面的代码中,我们定义了一个名为checkIfEmpty的函数,它接收一个参数user。我们使用逻辑与运算符(&&)来检查user对象是否存在,并使用逻辑非运算符(!!)来将结果转换为布尔值。如果user对象存在并且user.verified属性也存在且不为空,则返回true;否则返回false。

通过这种方式,我们可以轻松地检查一个对象是否为空。这在处理表单验证、数据校验等场景中非常有用。

0
0 Comments

ES6中的问题:检查对象是否为空

在ES6中,我们经常会遇到需要检查一个对象是否为空的情况。下面是两种常见的解决方法。

第一种方法是使用逻辑判断,判断对象是否存在且属性verified是否存在且不为空。如果满足条件,则返回true,否则返回false。

const checkIfVerifiedExists = (user) => {
    if (user && user.verified && Object.keys(user.verified).length) {
        return true;
    }
    return false;
};
console.log(checkIfVerifiedExists(null));
console.log(checkIfVerifiedExists({something: "a"}));
console.log(checkIfVerifiedExists({verified: null}));
console.log(checkIfVerifiedExists({verified: ""}));
console.log(checkIfVerifiedExists({verified: "a"}));
console.log(checkIfVerifiedExists({verified: "a", something: "b"}));

第二种方法更简单,使用三元运算符。如果满足条件,则返回true,否则返回false。

const checkIfVerifiedExists = (user) => {
    return (user && user.verified && Object.keys(user.verified).length) ? true : false;
};
console.log(checkIfVerifiedExists(null));
console.log(checkIfVerifiedExists({something: "a"}));
console.log(checkIfVerifiedExists({verified: null}));
console.log(checkIfVerifiedExists({verified: ""}));
console.log(checkIfVerifiedExists({verified: "a"}));
console.log(checkIfVerifiedExists({verified: "a", something: "b"}));

其中,第二种方法中的三元运算符其实并不是必需的,因为它会返回一个布尔值。

以上两种方法都可以用来检查对象是否为空,选择哪种方法取决于个人的喜好和项目的需求。

0