数组 字符串 常用操作

数组内是否有重复

//返回true 就是有重复
function isRepeat(array){
if(array.length === 0){ return false; } for(var i=0 ; i<array.length; i++){ var curV = array[i]; var count = 0; for(var j=0 ; j<array.length; j++){ if(curV === array[j]){ count += 1; } } if(count == 2){ return true; } } return false; }

 

jquery 添加数组与删除数组

//添加数组
function add(id){
if($.inArray(id, teacherIdArray) === -1) { xxxArray.push(id); } }
//删除数组 function remove(id){
var index = $.inArray(id, teacherIdArray); if(index !== -1) { xxxIdArray.splice(index , 1); } }
//添加
function addToArry(idVal,clzssName) {
if(findElem(classesArray, 'id', idVal) === -1) {
classesArray.push({'id':idVal,'name':clzssName});
}
}
//删除
function removeArry(idVal,clzssName) {
var index = findElem(classesArray, 'id', idVal);
if(index !== -1) {
classesArray.splice(index , 1);
}
}
/*按照属性值,查找对象 如果不存在返回-1*/
function findElem(arrayToSearch, attr, val) {
for (var i = 0; i < arrayToSearch.length; i++) {
if (arrayToSearch[i][attr] == val) {
return i;
}
}
return -1;
}
 

 扩展indexof  IE8版本不兼容

//添加数组IndexOf方法
if (!Array.prototype.indexOf){
  Array.prototype.indexOf = function(elt /*, from*/){
    var len = this.length >>> 0;

    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;
  };
}

 

 

数组 常用操作

 /*数组的属性*/
     var arr=[1,3,34,45,44,88];
     document.write(arr.constructor+"<br/>");
     document.write(arr.length+"<br/>");
     /*数组的方法*/
      var arr2=["a","b","c","d"];
      document.write(arr.concat(arr2)+"<br/>");/*合并数组*/
      document.write(arr2.join("")+"<br/>");/*将数组转换成字符串,jion的参数是链接*/
      document.write(arr2.pop()+"<br/>");/*删除数组最后一个元素,并返回删除的最后一个元素,返回d,但数组变为a,b,c*/
      document.write(arr2+"<br/>");
      document.write(arr2.push(arr)+"<br/>");/*往数组末位添加一个元素,并返回长度4*/
      document.write(arr2+"<br/>");
      document.write(arr2.reverse()+"<br/>");/*从反向排列*/
      document.write(arr2.sort()+"<br/>");/*从反向排列*/
      document.write(arr.shift()+"<br/>");/*删除数组第一个数,返回删除的内容*/
      document.write(arr2.slice(2,3)+"<br/>");/*从第2位开始截取到第3位,返回一个新的数组,不影响原来的数组*/
      document.write(arr2+"<br/>");
      document.write(arr2.splice(0,1,"dfsd")+"<br/>");/*从第x位开始删除y位,添加第三个参数的内容*/
      document.write(arr2.toString()+"<br/>");/*转化为字符串*/
      document.write(arr2.valueOf());

字符串常用

 var str="guoerwe3423iddddddddd";
     document.write(str.charAt(4)+"<br/>");/*索引值*/
     document.write(str.indexOf("ddd")+"<br/>");/*打印字母的索引值*/
     document.write(str.lastIndexOf("d")+"<br/>");/*从最后开始往前找*/
     var myExp=str.match(/\d/gi);/*匹配正则表达式的内容,返回一个匹配的数组*/
     document.write(myExp+"<br/>");
    var str2="how is every things going";
    var arry2=str2.split(" ");/*将字符串转化为数组,参数为分割的内容。*/
     document.write(arry2[2]+"<br/>");
    document.write(str2.search(/is/gi)+"<br/>");/*使用search方式查找匹配元素,返回匹配的内容的索引值4*/
    document.write(str2.replace("is","guoguo")+"<br/>");/*放入两个参数,第一个参数是替换的内容,第二个参数是替换的东西,返回替换后的字符串*/
    var s=str2.slice(0,1);/*截取返回截取的内容*/
    document.write(s+"<br/>");
    var str3="dsfdsfdsfsdfds";
    document.write(str3.substr(1,4)+"<br/>");/*从第1位开始向后截取4位,这个是数量*/
    document.write(str3.substring(1,6)+"<br/>");/*从第1位开始截取到索引值6-1位*/

 

posted @ 2017-06-21 10:14  hupan508  阅读(238)  评论(0编辑  收藏  举报