在JS问题中搜索字符串中的字符串

时间:2012-10-25 08:06:14

标签: javascript

我正在使用HTML5而indexOf给了我一个错误,所以我可以用什么来搜索字符串中的“正确”一词:a001_new_quiz_multiple_choice_new_mc4_correct.html这是一个名为value1的变量

function SetAPIValue(key1, value1)
{
   // alert("action is " + key1 + " and data is " + value1);
   console.log(value1);

   var str = "wrong";
   var n = str.search(value1);
   if (n > 0)
     alert("found");
}

我得到的错误:0x800a01b6 - Microsoft JScript运行时错误:对象不支持属性或方法'indexOf'

3 个答案:

答案 0 :(得分:0)

我不知道你是如何使用indexOf的,但是这样可行:

var value1 = "a001_new_quiz_multiple_choice_new_mc4_correct.html";
var n = value1.indexOf("correct");
if (n >= 0) alert("found");   

也许您尝试过"correct".indexOf(value1);而不是value1.indexOf("correct");

demonstration

答案 1 :(得分:0)

此错误仅在IE上发生吗? 如果是这样 - 你应该注意indexOf没有在他们的JS享受中实现。 尝试在indexOf中首次使用之前添加以下代码:

if (!Array.prototype.indexOf) {
    Array.prototype.indexOf = function(obj, start) {
         for (var i = (start || 0), j = this.length; i < j; i++) {
             if (this[i] === obj) { return i; }
         }
         return -1;
    }
}

答案 2 :(得分:0)

  

function SetAPIValue(key1,value1)   {
    var regEx = new RegExp(“correct”);
    警报(regEx.test(值1));
  }