localStorage.key関数では引数に文字列やfalseやundefinedやnullを渡すとlocalStorage.key(0)と同じ結果が返ってくる
たまたま気づいたのでメモしておく。
なお、環境はChromeの 94.0.4606.81 (Official Build) (arm64)
で、他のブラウザでは試していないので、もしかしたらブラウザが異なれば挙動は異なるかもしれない。
気づいたのでメモした、ぐらいの軽い備忘録なのでその点ご了承ください。
window.localStorage.setItem('test', 'aaa') window.localStorage.key(0) // => 'test' window.localStorage.key('a') // => 'test' window.localStorage.key(false) // => 'test' window.localStorage.key(undefined) // => 'test' window.localStorage.key(null) // => 'test'
となる。
単純に発見だったので備忘録としてここに書き記しておく
ちなみに key
に何も引数を渡さないとエラーになる。
window.localStorage.key() // => Uncaught TypeError: Failed to execute 'key' on 'Storage': 1 argument required, but only 0 present.
ちなみにkeyに関するMDNのドキュメントはこちら。