这句话有问题 if (IsSame(table[i],record))改为 if (!IsSame(table[i],record))

解决方案 »

  1.   

    1、两个函数中都使用了全局变量i,这将发生冲突!
    需在函数中声明变量i为私有变量:var i;
    2、思路没错,但书写的太复杂!
    //检查record是否在Table中,是:true,否:false
    function RecordIsInTable(table,record) {
      for(var i=0; i<table.length; i++) {
        if(table[i].toString() == record.toString()) {
          return true;
        }
      }
      return false;
    }a=[[1,2,3],[4,5,6],[7,8,9]];alert(RecordIsInTable(a,[7,8,9]));即可
      

  2.   

    "if(table[i].toString() == record.toString())" —— 赞一个~~~ 这种做法虽然不太严谨某些情况可能会出错,但是就我读取的数组中并不会出现这种特殊情况,方法很简单,很实用,节省了我一个IsSame函数!哈哈~~高,实在是高!