數(shù)組和字符串操作

數(shù)組

var arr = ["a","b","c","d"];
1. Array.unshift() 在前面添加元素

arr.unshift(val1,[val2[, val3[, . . . [,valN]]]])
將一個(gè)或多個(gè)元素添加到數(shù)組的前面
返回值:數(shù)組新長(zhǎng)度(length)

2. Array.shift() 刪除第一個(gè)

arr.shift()
刪除數(shù)組第一個(gè)元素
返回值:被刪除的元素

3. Array.pop() 刪除最后一個(gè)

arr.pop()
刪除數(shù)組最后一個(gè)元素
返回值:被刪除的元素

4. Array.push() 在后面添加元素

arr.push()
在數(shù)組后面添加元素
返回值:新數(shù)組的長(zhǎng)度(length)

5. Array.slice() 復(fù)制數(shù)組的一部分(不改變?cè)瓟?shù)組)

arr.slice(start,end) 包含start不包含end
參數(shù)start:必傳
參數(shù)end:可選(如不傳參數(shù)時(shí),從start開始復(fù)制到最后一個(gè)元素)
從已有的數(shù)組中返回選定的元素
返回值:數(shù)組(選中的元素組成一個(gè)數(shù)組)
不會(huì)改變?cè)瓟?shù)組

6. Array.join() 將數(shù)組的值拼接為為字符串

arr.join()
不傳參數(shù)默認(rèn)是","逗號(hào)進(jìn)行拼接
參數(shù)類型:字符串類型 arr.join("-")

7. Array.reverse() 翻轉(zhuǎn)數(shù)組

返回值:翻轉(zhuǎn)后的數(shù)組
原數(shù)組改變

8. Array.sort() 數(shù)組排序

默認(rèn)排序順序是根據(jù)字符串Unicode碼點(diǎn)

sort()方法可以傳遞一個(gè)函數(shù)作為參數(shù),這個(gè)參數(shù)用來(lái)控制數(shù)組如何排序

  arr = [1,2,10,4,40,5]

  arr.sort(function(a,b){
    
        return a-b;  //按照正序
        //return b-a //按照倒序
  })
9. Array.concat() 數(shù)組合并

返回值:返回一個(gè)新數(shù)組,原數(shù)組不變

var arr = [1,2,3]
var arr1 = ["a","b","c"]
var newArray = arr.concat(arr1);//[1,2,3,"a","b","c"];
10. Array.splice() 以新元素替換舊元素

arr.splice(參數(shù)1,參數(shù)2,參數(shù)3,參數(shù)4...)
參數(shù)1:開始位置(下標(biāo))
參數(shù)2:要替換的個(gè)數(shù)
參數(shù)3...:需要替換的內(nèi)容

返回值:被替換的內(nèi)容
 var arr = [1,2,3,4,5];
      var b = arr.splice(1,2,75,68,69,77)
      console.log(arr);//[1, 75, 68, 69, 77, 4, 5]
      console.log(b);//[2,3]
10.查找數(shù)組元素 --indexOf-lastIndexOf
indexOf(searchvalue,fromindex)

參數(shù)searchvalue:必選 需要檢索的字符串值
參數(shù)fromindex:可選 固定從什么位置開始檢索(下標(biāo))
返回值 : 查找到的字符串的索引值 如果找不到返回-1

lastIndexOf(searchvalue,fromindex)

從最后一項(xiàng)往前查找
返回值 : 查找到的字符串的索引值 如果找不到返回-1

11.操作數(shù)組里的元素
filter() 過(guò)濾數(shù)組

返回值:返回一個(gè)符合函數(shù)要求的元素組成的新數(shù)組

語(yǔ)法:var newArr = arr.filter(function(element,index,array){}
elememt:數(shù)組的每項(xiàng)值
idnex:索引值
array:表示傳入的數(shù)組
 var arr = [11,22,33,66,4,22,4,56,77]
      var newArr = arr.filter(function (ele) {
        return ele>10
      })
      console.log(newArr)//[11, 22, 33, 66, 22, 56, 77]
    });
map()

map()方法讓數(shù)組中的每個(gè)元素都調(diào)用一次提供的函數(shù),將調(diào)用后的結(jié)果放到一個(gè)新的數(shù)組里并返回
不會(huì)改變?cè)瓟?shù)組

 var arr = ["億","是啥","哈哈"]
      var newArr = arr.map(function (ele) {
          return ele+"end"
      })
      console.log(newArr);//["億end", "是啥end", "哈哈end"]
    });
12.forEach()遍歷數(shù)組

arr.forEach(function(ele,index,array){})

  arr.forEach(function (element, index, array) {
    //數(shù)組里的每一個(gè)元素都會(huì)被打印
    console.log("第" + index + "個(gè)元素是" + element);
  });
13.清空數(shù)組
1.array.splice(0,array.length);//刪除數(shù)組中所有的元素
2.array.length = 0;//直接修改數(shù)組的長(zhǎng)度
3.array = []; 將數(shù)組賦值為一個(gè)空數(shù)組,推薦
數(shù)組練習(xí)
var arr = ["c", "a", "z", "a", "x", "a", "a", "z", "c", "x", "a", "x"]
1. 找到數(shù)組中每一個(gè)a出現(xiàn)的位置
var arr = ["c", "a", "z", "a", "x", "a", "a", "z", "c", "x", "a", "x"]
        var index = 0
        var temp = 0
        for (var i = 0;i<arr.length;i++){
          index = arr.indexOf("a",temp);
          if(index !== -1){
            console.log(index)
            temp = index+1;
          }
        }
2. 數(shù)組去重,返回一個(gè)新數(shù)組
var arr = ["c", "a", "z", "a", "x", "a", "a", "z", "c", "x", "a", "x"]
       //數(shù)組去重 返回新數(shù)組
       var  newArr = []
       for(var i = 0; i<arr.length;i++){
       if (newArr.indexOf(arr[i]) == -1){
         newArr.push(arr[i])
         }
       }
       console.log(newArr)
3. 獲取數(shù)組中每個(gè)元素出現(xiàn)的次數(shù)
var arr = ["c", "a", "z", "a", "x", "a", "a", "z", "c", "x", "a", "x"]
      //獲取每個(gè)元素出現(xiàn)的位置
      var obj = {};
      arr.forEach(function (ele) {
          if(obj[ele] == undefined){
            obj[ele] = 1;
          }else{
            obj[ele]+=1
          }
      })
      console.log(obj)

==============================================

字符串操作

String對(duì)象

字符串可以看成是一個(gè)字符數(shù)組(真正運(yùn)算的是字符串的基本包裝對(duì)象)
因此字符串也有長(zhǎng)度(length屬性),也可進(jìn)行遍歷

查找指定字符串(同數(shù)組) indexOf() lastIndexOf()
indexOf() lastIndexOf()
獲取某個(gè)字符第一次出現(xiàn)的位置,如果沒有返回-1
去除空格 trim()

去除字符串兩邊的空格,內(nèi)部空格不會(huì)去除

大小寫轉(zhuǎn)換
toUpperCase() //全部轉(zhuǎn)換成大寫
toLowerCase() //全部轉(zhuǎn)換成小寫
字符串拼接與截取
字符串拼接 concat()

用法和數(shù)組一樣
返回值:新的字符串
字符串拼接一般使用 + 號(hào)

字符串截取

1.slice(start,end) 包含頭不包含尾(參數(shù)均為下標(biāo))
復(fù)制字符串一部分
返回值:新字符串
2.substr(start,length) 復(fù)制字符串 (推薦)
從start開始 復(fù)制length個(gè)字符

字符串切割為數(shù)組 split()
//split:將字符串分割成數(shù)組,原字符串不改變(很常用)
var str = "張三,李四,王五";
var arr = str.split(",");
未完..













最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容