length が undefined になった時に別の手段で対処する
undefined になる
let list = { hoge: 000, fuga: 001, piyo: 002 }; console.log(list.length) // undefined
undefined になる理由は
オブジェクトに length
は効かないとのこと。
オブジェクトについては下記、参照。
JavaScriptでは、数値も文字列も配列も、すべてはオブジェクトである(everything is an object)といわれます。オブジェクトとは、データと属性が一緒になったものを指します。
正直よくわからないので、length
が undefined
になった時は都度、別の方法(下記)をを試してみる。
解決方法は
let list = { hoge: 000, fuga: 001, piyo: 002 }; console.log(list.length) // undefined console.log(Object.keys(list).length) // 3
Object.keys(list).length)
で、無事解決。