[英]Match a string to a value in an array and return the id of that value in JavaScript
可以說我在JavaScript中具有以下數組:
var skins = new Array('Light', 'Medium', 'Dark');
我將如何檢查該數組(0、1或2)中的哪個ID與我提供的字符串具有匹配的值。 因此,例如,如果我查看字符串“ Medium”,則應返回ID 1。
您可以使用Array.indexOf :
var index = skins.indexOf('Medium'); // 1
此功能已在JavaScript 1.6中引入,但您可以包括該功能以與舊的瀏覽器兼容。
這是Firefox使用的算法:
if (!Array.prototype.indexOf) {
Array.prototype.indexOf = function(elt /*, from*/) {
var len = this.length >>> 0;
var from = Number(arguments[1]) || 0;
from = (from < 0)
? Math.ceil(from)
: Math.floor(from);
if (from < 0)
from += len;
for (; from < len; from++) {
if (from in this &&
this[from] === elt)
return from;
}
return -1;
};
}
Array.prototype.lastIndex= function(what){
var L= this.length;
while(L){
if(this[--L]=== what) return L;
}
return -1;
}
Array.prototype.firstIndex= function(what){
var i=0, L= this.length;
while(i<L){
if(this[i]=== what) return i;
++i;
}
return -1;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.