/*****************************************===一. slice不影響原陣列方法, 「純真」方法(8個)有:
1. slice() 淺拷貝陣列元素
2. join() 將陣列中的所有元素轉換為以某符號隔開的字串
3. tolocatestring() 陣列轉字串
4. tostring() 陣列轉字串(不推薦使用)
5. cancat() 合併兩個或多個陣列,返回乙個新陣列
6. indexof() 查詢陣列中是否存在某個元素,如果存在,返回下標
7. lastindexof() 查詢指定元素在陣列中最後乙個位置
8. includes() es7 查詢是否包含某個元素,返回布林
****************************************===*/
//語法end);
let arr = [1,2,3];
console.log(arr.slice(0,2)); [1,2], 拷貝了從第0個元素到第二個元素(開區間)
console.log(arr); //[1,2,3],原陣列不變
let arr = ['大公尺','禽蛋'];console.log(arr.slice(0,1)); //[ '大公尺']
console.log(arr); //['大公尺','禽蛋'],原陣列值不變
arr[0] = '小龍蝦';
console.log(arr); //['小龍蝦','禽蛋'], arr[0]會改變原陣列值
//複雜資料會聯動改變let arr = ;
let ret = arr.slice();
console.log(ret,arr);
arr[0].name = '小龍嚇變身';
console.log(ret,arr);
二. join
// [1,2,3,4]會轉字串let arr = [1,2,3,4];
let ret = arr.join('&');
console.log(ret); //'1&2&3&4'
console.log(typeof ret); //string
//巢狀情況三. tolocalestringlet arr = ['a', ['bb','cc'], 'd'];
let ret = arr.join();
console.log(ret); //"a,bb,cc,d", 與arr.join(',');一樣
let ret _1= arr.join('');
console.log(ret_1); //abb,ccd
let ret _2= arr.join(','); //"a,bb,cc,d", 同arr.join();
console.log(ret_2);
let ret _3= arr.join('&');
console.log(ret_3); //a&bb, cc&d
let arr = [1,2,3,4];四. tostringlet ret = arr.tolocalestring();
console.log(ret); //"1,2,3,4"
console.log(typeof ret); //string
let arr_1 = [,,2,3,4];
let ret_1 = arr_1.tolocalestring();
console.log(ret_1); //"[object,object],[object,object],2,3,4"
console.log(typeof ret_1); //string
五.concat
//合併兩個或多個陣列,返回乙個新陣列,原陣列保持純潔// 語法: (舊的).cancat(新的)
let arr_1 = ['h','e','l',];
let arr_2 = ['l','o'];
let ret = arr_1.concat(arr_2);
console.log(ret); //['h','e','l','l','o']
console.log(ret.join('')); //hello
//用concat插入元素let arr = [1,2];
let ret = arr.concat('哈哈');
console.log(ret); //['1','2','哈哈']
//合併巢狀陣列,會淺拷貝六. indexoflet arr_1 = [1,2,3,['c','d'],4,5];
let arr_2 = ['ok',9];
let ret = arr_1.concat(arr_2);
console.log(ret); //[1, 2, 3, array(2), 4, 5, "ok", 9]
// 注意:是對陣列中元素,而非針對一串字串, 遵守「===」全等原則七. lastindexoflet ret = arr.indexof('哈哈'),
ret_1 = arr.indexof('哈');
console.log(ret); //0,表示元素位置;一般用》-1判斷包含;
console.log(ret_1); //-1,表示沒有, 一般用(indexof('xx')<0)判斷沒有;
// 語法 arr.lastindexof('str', fromindex);八. (略,見下篇)// fromindex如果指定了,比如4,就從下標4截止到下表0為搜尋範圍,是向左逆向;
let arr = ['a','good',1,2,'good',4,'foo',5,'good',6,'bar',9];
let ret_1 = arr.lastindexof('good',2);
let ret_2 = arr.lastindexof('good',5);
let ret_3 = arr.lastindexof('good');
console.log(ret_1); //1
console.log(ret_2); //4
console.log(ret_3); //8
js運算元組
1 建立陣列 var array new array var array new array size 指定陣列的長度 var array new array item1,item2 itemn 建立陣列並賦值 2 取值 賦值 var item array index 獲取指定元素的值 array ...
運算元組 JS
新增鏈結描述 來自 object.is data1,data2 判斷資料是否相等 new map new set join 陣列分割字串 push 和pop 新增 和刪除 shift 和 unshift 方法用於把陣列的第乙個元素從其中刪除,並返回刪除的值。sort reverse concat s...
js運算元組
2012 12 28 17 34 09 標籤 分類 日常學習 一直在使用js相關的東西,但很少作總結,今天遇到操作js陣列的一些問題,對js的陣列有了更進一步的認識!1 建立陣列 var array new array var array new array size 指定陣列的長度 var arr...