下面的索引變量被錯誤地初始化,因爲f()將返回除數字之外的東西,比如字符串。那麼這裏可能發生的最糟糕的事情是什麼?我的測試似乎表明,它沒有任何效果,但現在我想知道......當javascript數組被視爲對象時發生了什麼?
function index(o, f) {
var index = []; // should be index = {};
each(o, function(k, v, o) { index[f(k, v, o)] = v; });
return index;
}