首頁 >web前端 >js教程 >JavaScript 不支援 indexof 該如何解決_javascript技巧

JavaScript 不支援 indexof 該如何解決_javascript技巧

WBOY
WBOY原創
2016-05-16 15:07:261530瀏覽

indexOf() 方法定義與用法

indexOf() 方法可傳回某個指定的字串值在字串中首次出現的位置。

該方法將從頭到尾地檢索字串 stringObject,看它是否含有子字串 searchvalue。開始檢索的位置在字串的 fromindex 處或字串的開頭(沒有指定 fromindex 時)。如果找到一個 searchvalue,則傳回 searchvalue 的第一次出現的位置。

stringObject 中的字元位置是從 0 開始的。

如果在陣列中沒找到字串則回傳 -1。

步入正題:

js中的 indexof方法找出給定元素能找在數組中找到的第一個索引值,但indexof在IE8下是不支持的,本文給大家介紹ie8 不支援 indexof 的解決方法

如何某瀏覽器不支援indexof,你可以在寫scripts時,在其開頭使用以下程式碼,它能夠允許你在沒有本地支援的情況下使用indexOf方法。

if (!Array.prototype.indexOf) {
Array.prototype.indexOf = function(searchElement, fromIndex) {
var k;
if (this == null) {
throw new TypeError('"this" is null or not defined');
}
var O = Object(this);
var len = O.length >>> 0;
if (len === 0) {
return -1;
}
var n = +fromIndex || 0;
if (Math.abs(n) === Infinity) {
n = 0;
}
if (n >= len) {
return -1;
}
k = Math.max(n >= 0 ? n : len - Math.abs(n), 0);
while (k < len) {
if (k in O && O[k] === searchElement) {
return k;
}
k++;
}
return -1;
};
}

js不支援indexof的相關介紹就到此介紹完了,以上解決辦法很管用,需要的朋友可以參考下以上教程,同時也非常感謝大家對腳本之家網站的支持!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn