Weboldal keresés

szótár - Hogyan ellenőrizhető, hogy egy hash térkép üres-e Typescript-ben


Nekem van

my_map: { [name: string]: string }

Hogyan ellenőrizhetem, hogy a my_map hashmap üres-e?

Eszembe jut a Object.keys(my_map).length === 0, de túlzásnak tűnik.

Válasz #1

Furcsa módon a túlzásba vitt megoldásod valójában nem elég; egy kicsit tovább kell menned:

Object.keys(obj).length === 0 && obj.constructor === Object

Példák :

function isEmptyUnderkill(obj: any) {
    return Object.keys(obj).length === 0;
}

function isEmptyObject(obj: any) {
    return Object.keys(obj).length === 0 && obj.constructor === Object;
}


const a = {};
const b = { name: 'User' };

console.log(isEmptyUnderkill(a), isEmptyObject(a));
console.log(isEmptyUnderkill(b), isEmptyObject(b));
console.log(isEmptyUnderkill(new Date()), isEmptyObject(new Date()));

ad :

true true
false false
true false

Kapcsolódó cikkek