JavaScript编程题(二)—— 数组
1.找出元素 item 在给定数组 arr 中的位置。如果数组中存在 item,则返回元素在数组中的位置,否则返回 -1
function indexOf(arr, item) {
for(var i = 0; i < arr.length; i++){
if(arr[i] == item){
return i;
}
}
return -1;
}
2.计算给定数组 arr 中所有元素的总和 (数组中的元素均为 Number 类型)
function sum(arr) {
return eval(arr.join('+'));
//eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码;
3.移除数组 arr 中的所有值与 item 相等的元素。不要直接修改数组 arr,结果返回新的数组
function remove(arr, item) {
var arr1 = [];
for(i = 0;i < arr.length; i++){
if(arr[i] != item){
arr1.push(arr[i]);
}
}
return arr1;
}
4.移除数组 arr 中的所有值与 item 相等的元素,直接在给定的 arr 数组上进行操作,并将结果返回
function removeWithoutCopy(arr, item) {
for(i = 0; i < arr.length; i++){
if(arr[i] == item){
arr.splice(i,1);
//考虑数组长度。去掉i个重复元素,数组长度-i
i--;
}
}
return arr;
}
5.在数组 arr 末尾添加元素 item。不要直接修改数组 arr,结果返回新的数组
function append(arr, item) {
var arr1 = [];
arr1 = arr.concat([item]);
return arr1;
}
6.删除数组 arr 最后一个元素。不要直接修改数组 arr,结果返回新的数组
function truncate(arr) {
return arr.slice(0, -1);
//slice:指定一个数组中的元素,创建一个新的数组原数组不变
//splice:对数组原身的操作,返回值为被操作的值
}
7.在数组 arr 开头添加元素 item。不要直接修改数组 arr,结果返回新的数组
function prepend(arr, item) {
return [item].concat(arr);
}
8.删除数组 arr 第一个元素。不要直接修改数组 arr,结果返回新的数组
function curtail(arr) {
return arr.slice(1);
}
9.合并数组 arr1 和数组 arr2。不要直接修改数组 arr,结果返回新的数组
function concat(arr1, arr2) {
return arr1.concat(arr2);
}
10.合并数组 arr1 和数组 arr2。不要直接修改数组 arr,结果返回新的数组
function concat(arr1, arr2) {
return arr1.concat(arr2);
}
11.在数组 arr 的 index 处添加元素 item。不要直接修改数组 arr,结果返回新的数组
function insert(arr, item, index) {
return arr.slice(0,index).concat(item).concat(arr.slice(index));
}
12.统计数组 arr 中值等于 item 的元素出现的次数
function count(arr, item) {
var num = 0;
for(var i = 0; i < arr.length; i++){
if(arr[i] == item){
num ++;
}
}
return num;
}
13.找出数组 arr 中重复出现过的元素
function duplicates(arr) {
var a = [];
//先排序,如果后一个与前一个相等且未保存,则保存。
for(var i=0;i<arr.length;i++)
for(var j=i+1;j<arr.length;j++){
arr[i]==arr[j]&&a.indexOf(arr[i])==-1&&a.push(arr[i]);
}
return a;
}
14.为数组 arr 中的每个元素求二次方。不要直接修改数组 arr,结果返回新的数组
function square(arr) {
var a = [];
for(var i = 0; i< arr.length; i++){
a[i] = arr[i] * arr[i];
}
return a;
}
15.在数组 arr 中,查找值与 item 相等的元素出现的所有位置
function findAllOccurrences(arr, target) {
var a = [];
for(var i = 0; i < arr.length; i++){
if(target == arr[i]){
a.push(i);
}
}
return a;
}
点击查看更多内容
6人点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦