我正在爲ES2015類寫一個構造函數,它將接受Map或普通的舊JavaScript對象。如果輸入參數是一個Map,構造函數將會存儲它,但是如果它是一個JS對象,它應該通過new Map(Object.keys(obj).map(k => [k, obj[k]]))
將它轉換爲Map。確定變量是ES2015 Map還是普通的舊JavaScript對象
我的問題是:我怎麼能安全地告訴輸入參數是一個Map還是Object?我可以測試一些特定於Map的方法,但有沒有更可靠和更可讀的方法?據我所知,沒有地圖等效物Array.isArray
。
Object.entries不是ES6。 – Bergi