obj[i]もしくはobj.item(i)だけど範囲外でもない0でundefined出すのはおかしい
具体的にどこでの話なの?

例えばこのスレでこれを実行すると
(function(){
const obj = document.links
console.log(obj[0])
})()
これが返ってくる
<a href="https://www.5ch.net/";>