js陣列和字串方法
阿新 • • 發佈:2022-05-08
一.陣列方法
1.1.可以改變原陣列
var arr = [10, 20, 30, 40, 50, 55]; // 1. **** push() --- 在陣列的最後新增一項內容 // var ret = arr.push("60"); // 返回值是新增之後的陣列長度(一般不用) // 2. pop() --- 在陣列的最後刪除一項內容 // var ret = arr.pop(); // 返回值是刪除項 // 3. unshift() --- 在陣列的前面新增一項內容 // var ret = arr.unshift("66"); // 返回值是新增之後的陣列長度(一般不用) // 4.shift() --- 在陣列的前面刪除一項內容 // var ret = arr.shift(); // 返回值是刪除項 // 5. reverse()------翻轉原陣列 // var ret = arr.reverse(); // 返回值是翻轉後的陣列 // 6. splice(index,n,引數1,引數2) -------- 切割/刪除/新增 陣列 /* index 起始索引 n 個數 引數1,引數2 新增到陣列中的內容 */ // 6.1 刪除陣列中的項(只傳一個引數) // 功能: 從索引index開始,到結尾 全部刪除掉 // 返回值: 刪除的內容 // var ret = arr.splice(1); // 6.2 ****** 清空陣列 // var ret = arr.splice(0); // 6.3 ****** 切割陣列 (傳兩個引數) // 返回值是 從index開始切割n個字元 // 改變了原陣列,原陣列刪除了這些內容 // var ret = arr.splice(2, 2); // 6.4 刪除之後,新增陣列的項-----操作原陣列 // 返回值是 從index開始切割n個字元 // var ret = arr.splice(2, 2, 300, 400, 500);
1.2.不改變原陣列
var arr = [10, 20, 30, 40, 50, 10]; // 1. slice(start,end) 從索引start 開始 切割到索引end 切割陣列的 // var ret = arr.slice(2, arr.length); // 2. indexOf(第一個出現的字元) 獲取索引 // var ret = arr.indexOf(10); // ******* 注意點: 如果找不到這個元素,會得到-1 // 實現功能:檢測陣列中有沒有這個元素 // var ret = arr.indexOf(100); // 3. join("字元") 陣列轉字串通過某個**字元**連結 // var ret = arr.join(" "); // 4. 一組方法(難)------遍歷陣列 var arr1 = [ { name: "張三", score: 50 }, { name: "李四", score: 80 }, { name: "王麻子", score: 100 } ] // 4.1 ******* forEach 遍歷陣列(取代for迴圈遍歷陣列) 沒有返回值 // arr1.forEach(function (item, index) { // // item 陣列中的項 index 索引 // console.log(item, index); // }); // 4.2 ***** map 遍歷陣列 有返回值-------每次返回的結果打包成陣列 整體返回 // 重點,現階段有點難 /* var ret = arr1.map(function (item, index) { // item 陣列中的項 index 索引 console.log(item, index); // 內部手動return return item.name; }); */ // 4.3 **** filter 遍歷陣列(過濾器) 有返回值-------return後面是一個表示式, 過濾有效資料 整體返回 // 重點,現階段有點難 var ret = arr1.filter(function (item, index) { // item 陣列中的項 index 索引 console.log(item, index); // 內部手動return return item.score > 60; }); console.log(ret);
二.字串方法
// 1. ******* split() 字串切割並轉陣列 /* var str1 = "1,2,3,4"; var arr = str1.split(","); console.log(arr); */ // 2. charAt 獲取字元 /* var str = "張三是一個法外狂徒"; // 字串頂天了叫他偽陣列 // console.log(str[0]); // console.log(str.length); var ret = str.charAt(1); console.log(ret); console.log(str[1]); */ // 3. ****** indexOf()------ 和陣列的使用,一模一樣 // 用來判斷字串中有沒有這個字元 /* var str = "張三是一個法外狂徒"; var ret = str.indexOf("s"); console.log(ret); */ // 4. substring(start,end)------- 從索引start 開始 切割到索引end 擷取 字串 /* var str = "張三是一個法外狂徒"; var ret = str.substring(1, 4); console.log(ret); */ // 5. substr(index,n)------- 從索引start 開始 切割n個字元 擷取 字串 /* var str = "張三是一個法外狂徒"; var ret = str.substr(2, 7); console.log(ret); */ // 6. ***** replace(old,new)-------- 使用新字元替換老字元 var str = "張三是一個法外狂徒"; var ret = str.replace("張三", "李四"); console.log(ret);