几个常用的Javascript函数

80酷酷网    80kuku.com

  javascript|函数// *******************************************************
// replacements for unsupported array functions (because arrayname.push(var)
// and arrayname.pop() are not implemented in IE until version 5.5)
function thearrayisgood(thearray,i) {
         if ((thearray[i] == "undefined") || (thearray[i] == "") || (thearray[i] == null))
             return false;
         else
             return true;
}

function getarraysize(thearray) {
// replacement for arrayname.length property
        for (i = 0; i < thearray.length; i++) {
                if ((thearray[i] == "undefined") || (thearray[i] == "") || (thearray[i] == null))
                        return i;
                }
        return thearray.length;
}

function arraypush(thearray,value) {
// replacement for arrayname.push(value)
        thearraysize = getarraysize(thearray);
        thearray[thearraysize] = value;
        return thearray[thearraysize];
}

function arraypop(thearray) {
// replacement for arrayname.pop()
        thearraysize = getarraysize(thearray);
        retval = thearray[thearraysize - 1];
        delete thearray[thearraysize - 1];

        thearray.length--; <<==我加了这句,很关键,否则出错
        return retval;
}

// *******************************************************

另外给出网上几个老外写的

function Array_pop() {
  var response = this[this.length - 1]
  this.length--
  return response
  }

if (typeof(Array.prototype.pop) == "undefined") {
  Array.prototype.pop = Array_pop
  }

function Array_push() {
  var A_p = 0
  for (A_p = 0; A_p < arguments.length; A_p++) {
   this[this.length] = arguments[A_p]
   }
  return this.length
  }

if (typeof Array.prototype.push == "undefined") {
  Array.prototype.push = Array_push
  }



分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: