什麼是通用索引使用本地函數(可用時),需要使用數組和值進行匹配的通用索引?Array.indexOf Shim沒有原型
-1
A
回答
0
indexOf = (function() {
if(typeof Array.prototype.indexOf === "function") {
return function(haystack, needle, fromIndex){
return haystack.indexOf(needle, fromIndex);
};
}
return function(haystack, needle, fromIndex) {
var l = haystack.length,
i = (typeof fromIndex === "undefined" ? 0 : (fromIndex < 0 ? l + fromIndex : fromIndex)),
index = -1;
for(i; i < l; ++i) {
if(haystack[i] === needle) {
index = i;
break;
}
}
return index;
};
})();
用途:
indexOf(["apples", "oranges", "bananas"], "apples");
//returns 0
indexOf(["oranges", "apples", "bananas"], "apples", 1);
//returns 1
返回-1
如果沒有找到。
+0
您錯過了'fromIndex'參數:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/磁盤陣列/#的indexOf參數。 –
+0
@FelixKling良好的捕獲,加入 –
+0
你仍然沒有正確處理負面索引:*「如果提供的索引值是負數,它被視爲從數組末尾的偏移」* –
相關問題
- 1. 沒有以前的原型?
- 2. 沒有類型原始
- 3. Array.indexOf不工作
- 4. Array.indexOf不敏感
- 5. 有沒有辦法在使用時獲得索引值.... Array.IndexOf?
- 6. 克羅克福德原型繼承...沒有原型鏈?沒有超級?
- 7. 型 -/JavaScript的 - array.indexOf總是返回-1
- 8. Array.Indexof混淆
- 9. 如何Array.indexOf比Array.some
- 10. Array.indexOf之間還是?
- 11. 的TableView在原型CellView沒有反應
- 12. 的JavaScript函數原型沒有定義
- 13. 沒有以前的功能原型
- 14. Qualtrics原型Javascript Event.observe沒有觸發
- 15. vuejs原型數組沒有被監視
- 16. 原型Cell沒有被tableview使用
- 17. 原型Class.create沒有正確的子類
- 18. 調用C函數沒有原型
- 19. jQuery沒有與原型Selenium衝突
- 20. 如何擴展沒有原型的Ember.String?
- 21. C++原型沒有被重新定義
- 22. CNTK的Python - one_hot編碼沒有原型
- 23. Rails更新頁面沒有原型?
- 24. 數組默認沒有原型嗎?
- 25. Javascript:沒有原型的功能
- 26. 警告:沒有以前的原型「format_SaNameT」
- 27. 原型函數沒有被調用
- 28. 原型函數沒有定義
- 29. Knockoutjs if/shim binding
- 30. Requirejs using shim
可以修改從MDN的填充工具:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/indexOf#Polyfill –
@FelixKling ^沒有原型 –
^*」您可以**修改**填充[...]「* –