MDNのArray.prototype.findのPolyfilについて
こんにちは。
次のところで紹介されている、
Array.find についてなのですが
Array.prototype.find() - JavaScript | MDN
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/find
ほとんどのところはわかるのですが
var list = Object(this);
var length = list.length >>> 0;
このように書かれたところがわかりません。
thisは、配列がくると思うのですが、
それをObjectにキャストして、length をビット演算で求める...??
これは何をしているのでしょうか?
Arraylikeオブジェクトに対してArray.find.call するための仕組み?
うーん、それにしてもビット演算する理由がさっぱりです。
JSの高いレベルをお持ちの方、教えてください。
あるいは参考ページなど示していただければ助かります。
よろしくおねがいします。