如何从列表中获取字符串的索引?

时间:2011-08-25 12:36:03

标签: javascript html

我有一个像

这样的清单
_Value1 = "'apple','ball','cat'....so on";

如果我知道苹果存在于上面的列表中。如何从列表中获取整个字符串的索引。像苹果应该有索引1,球应该有2个等等。

这个东西的javascript代码是什么?

3 个答案:

答案 0 :(得分:3)

var _Value1 = "'apple','ball','cat'";

// split the string on ","
var values = _Value1.split(",");

// call the indexOf method
var index = values.indexOf("'apple'");

工作示例:http://jsfiddle.net/Yt5fp/


您也可以检查它是否是较旧的浏览器,如果不存在则添加indexOf方法

if (!Array.prototype.indexOf)
{
    Array.prototype.indexOf = function(elt /*, from*/) {
        var len = this.length;
        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;
    };
}

答案 1 :(得分:0)

尝试使用这个技巧:

_Array = eval("[" + _Value1 + "]");

(它将使用JSON创建数组对象)

答案 2 :(得分:0)

假设你的琴弦(苹果,球,猫......)中没有,

您可以split基于分隔符的字符串:

var split = _values.split(",")

您将获得一系列字符串:{'apple', 'ball', 'cat'}

您可以使用数组中的indexOf方法查找元素的位置:

split.indexOf('apple')
IE不支持

indexOf。您可以在How to fix Array indexOf() in JavaScript for Internet Explorer browsers

中使用替代方案