码迷,mamicode.com
首页 > 编程语言 > 详细

js中数组字符串相关

时间:2015-08-25 19:24:57      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:

1.字符串转数组

var s = "abc,abcd,aaa";
ss = s.split(",");// 在每个逗号(,)处进行分解。

2.数组转字符串

var a, b;
a = new Array(0,1,2,3,4);
b = a.join(",");

3.查询数组中是否包含某元素

var num=jQuery.inArray(value, array);

解释:返回value在数组中的位置,从0开始计数(如果没有找到则返回 -1 )。

4.js中去除重复

参考其他人总结:

4.1

Array.prototype.unique1 = function () {

    var r = new Array();
    label:for(var i = 0, n = this.length; i < n; i++) {
        for(var x = 0, y = r.length; x < y; x++) {
            if(r[x] == this[i]) {
                continue label;
            }
        }
        r[r.length] = this[i];
    }
    return r;
}
4.2正则
Array.prototype.unique2 = function () {
    return this.sort().join(",,").replace(/(,|^)([^,]+)(,,\2)+(,|$)/g,"$1$2$4").replace(/,,+/g,",").replace(/,$/,"").split(",");
}
4.3使用对象的【hasOwnProperty】方法
rray.prototype.unique3 = function() {
    var temp = {}, len = this.length;
    for(var i=0; i < len; i++)  {
        var tmp = this[i];
        if(!temp.hasOwnProperty(tmp)) {
            temp[this[i]] = "my god";
        }
    }
  
    len = 0;
    var tempArr=[];
    for(var i in temp) {
        tempArr[len++] = i;
    }
    return tempArr;
}
4.4先排序,前项比后项。这个方法挺简单的,但也实用。
Array.prototype.unique4 = function () {
    var temp = new Array();
      this.sort();
      for(i = 0; i < this.length; i++) {
          if( this[i] == this[i+1]) {
            continue;
        }
          temp[temp.length]=this[i];
      }
      return temp;
  
}
4.5效率高
Array.prototype.unique5 = function() {
    var res = [], hash = {};
    for(var i=0, elem; (elem = this[i]) != null; i++)  {
        if (!hash[elem])
        {
            res.push(elem);
            hash[elem] = true;
        }
    }
    return res;
}

js中数组字符串相关

标签:

原文地址:http://www.cnblogs.com/jiangyaqiong/p/4758229.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!