1. 如果陣列中存在 item,則返回元素在陣列中的位置,否則返回 -1
functionindexof(arr, item)
for (var i=0;i)
return -1;
}}
2.計算給定陣列 arr 中所有元素的總和 .有多種解法。
(1)使用foreach函式
functionsum(arr) ,0);
return
s;}
(2)使用eval, 將字串轉化為可執行的**,但是效能不好
functionsum(arr)
(3)函式式程式設計,之後補充。
陣列方法 reduce 用來迭代乙個陣列,並且把它累積到乙個值中。使用 reduce 方法時,你要傳入乙個**函式,這個**函式的引數是乙個 累加器 (比如例子中的 previousval) 和當前值 (currentval)。
reduce 方法有乙個可選的第二引數,它可以被用來設定累加器的初始值。如果沒有在這定義初始值,那麼初始值將變成陣列中的第一項,而 currentval 將從陣列的第二項開始。
function
sum(arr) );
}
3. 移除陣列 arr 中的所有值與 item 相等的元素。不要直接修改陣列 arr,結果返回新的陣列
functionremove(arr, item)
});return
result;
}
也可以用filter
functionremove(arr, item) );
}
4. 移除陣列 arr 中的所有值與 item 相等的元素,直接在給定的 arr 陣列上進行操作,並將結果返回.
splice(index,len,[item]) 注釋:該方法會改變原始陣列。
splice有3個引數,它也可以用來替換/刪除/新增陣列內某乙個或者幾個值
index:陣列開始下標 len: 替換/刪除的長度 item:替換的值,刪除操作的話 item為空
functionremovewithoutcopy(arr, item)
}return
arr;
}
5. 在陣列 arr 末尾新增元素 item。不要直接修改陣列 arr,結果返回新的陣列
functionreturn
arr.concat(item);
}使用concat將傳入的陣列或非陣列值與原陣列合併,組成乙個新的陣列並返回
6. 刪除陣列 arr 最後乙個元素。不要直接修改陣列 arr,結果返回新的陣列
//利用slice
function
truncate(arr)
//利用filter
function
truncate(arr) );}//
function
truncate(arr)
//利用join+split+pop 注意!!!:資料型別會變成字元型
function
truncate(arr)
//利用concat+pop
function
truncate(arr)
//普通的迭代拷貝
function
truncate(arr, item)
return
newarr;
}7.
在陣列 arr 開頭新增元素 item。不要直接修改陣列 arr,結果返回新的陣列
//利用concat
function
prepend(arr, item)
//function
prepend(arr, item)
//利用slice+unshift/splice
function
prepend(arr, item)
//使用join+split+unshift/splice組合
function
prepend(arr, item)
//普通的迭代拷貝
function
prepend(arr, item)
newarr.unshift(item);
return
newarr;
}
8. 刪除陣列 arr 第乙個元素。不要直接修改陣列 arr,結果返回新的陣列
//利用slice
function
curtail(arr)
//利用filter
function
curtail(arr) );}//
function
curtail(arr)
//利用join+split+shift 注意!!!:資料型別會變成字元型
function
curtail(arr)
//利用concat+shift
function
curtail(arr)
//普通的迭代拷貝
function
curtail(arr)
return
newarr;
}
9. 在陣列 arr 的 index 處新增元素item。不要直接修改陣列 arr,結果返回新的陣列
functioninsert(arr, item, index)
//利用slice+concat
function
insert(arr, item, index)
//利用concat +splice
function
insert(arr, item, index)
//利用slice+splice
function
insert(arr, item, index)
//function
insert(arr, item, index)
//普通的迭代拷貝
function
insert(arr, item, index)
newarr.splice(index,0,item);
return
newarr;
}
10. 統計陣列 arr 中值等於 item 的元素出現的次數
//filter()-->利用指定的函式確定是否在返回的陣列中包含某一項
function
count(arr, item) );
return
count.length;
}//map()-->對陣列中的每一項進行給定函式,
//返回每次函式條用的結果組成的陣列;
function
count(arr, item)
});return
count;
}//for迴圈
function
count(arr, item)
}return
count;
}//reduce()-->從陣列的第一項開始,逐個遍歷到最後;
function
count(arr, item) , 0);
return
count;
}//foreach()-->對陣列中的每一項執行傳入的函式
function
count(arr, item) );
return
count;
}
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...