web-dev-qa-db-ja.com

lodashチェックオブジェクトのプロパティには値があります

私はいくつかのプロパティを持つオブジェクトを持っています、それはこのようなものだと言います

{ a: "", b: undefined }

jsxには、オブジェクトのプロパティが空ではないか、値があるかどうかを確認できる1行のソリューションがありますか?配列の場合、isEmptyメソッドがあります。

私はこれを試しました

const somethingKeyIsnotEmpty = Object.keys((props.something, key, val) => {
        return val[key] !== '' || val[key] !== undefined
})
9
Celdric Kang

Lodashでは、_。someを使用できます

_.some(props.something, _.isEmpty)
34
Mukesh Soni

Lodash _.everyを使用して、_.values_.isEmptyであるかどうかを確認できます

const profile = {
  name: 'John',
  age: ''
};

const emptyProfile = _.values(profile).every(_.isEmpty);

console.log(emptyProfile); // returns false
7
Marian Gálik

可能な方法:

すべてのキーを繰り返し、値を確認します。

let obj = {a:0, b:2, c: undefined};

let isEmpty = false;

Object.keys(obj).forEach(key => {
    if(obj[key] == undefined)
        isEmpty = true;
})

console.log('isEmpty: ', isEmpty);

Array.prototype.some() を次のように使用します。

let obj = {a:0, b:1, c: undefined};

let isEmpty = Object.values(obj).some(el => el == undefined);

console.log('isEmpty: ', isEmpty);

undefinedおよびnullのインデックスを確認します。

let obj = {a:1, b:2, c: undefined};

let isEmpty = Object.values(obj).indexOf(undefined) >= 0;

console.log('isEmpty: ', isEmpty);
4
Mayank Shukla