Js Array使用方法总结

Array使用方法总结

在ES5中,一共有9个Array方法

Array.prototype.indexof
Array.prototype.lastIndexOf
Array.prototype.every
Array.prototype.some
Array.prototype.forEach
Array.prototype.map
Array.prototype.filter
Array.prototype.reduce
Array.prototype.reduceRight
1、indexOf

indexOf(),返回查找到该数组中第一个找到的元素位置,没有找到就返回-1.

2、lastIndexOf

lastIndexOf(),从结尾开始查找,如果找到就返回位置,未找到返回-1.

3、filter

filter(),返回一个满新匹配过滤条件的数组
不用filter时:

var arr=[
    {"name":"apple","count":2},
    {"name":"orange","count":5},
    {"name":"pear","count":3},
    {"name":"orange","count":16}
];
var newArr=[];
for(var i=0,l=arr.length;i<l;i++){
    if(arr[i].name==='orange'){
        newArr.push(arr[i]);
    }
}

用了filter时:

var arr=[
    {"name":"apple","count":2},
    {"name":"orange","count":5},
    {"name":"pear","count":3},
    {"name":"orange","count":16}
];
var newArr=arr.filter(function(item){
    return item.name==='orange';
})
4、forEach

forEach()为每个元素执行对应的方法

var arr=[1,2,3,4,5,6];
    //users the usual "for" loop to iterate
    for(var i=0,l=arr.length;i<l;i++){
    console.log(arr[i]);
}

    //users forEach to iterate
    arr.forEach(function(item,index){
    console.log(item);
})
5、map

map(),对数组的每个元素执行硬顶操作(映射后),会返回一个新数组

不使用map

var oldArr=[{first_name:"Colin",last_name:"Toh"},{first_name:"Addy",last_name:"Osmani"},                {first_name:"Yehuda",last_name:"Katz"}];

function getNewArr(){
    var newArr={};
    for(var i=0,l=oldArr.length;i<l;i++){
        var item=oldarr[i];
        item.full_name=[item.first_name,item.last_name].join(' ');
        newArr[i]=item;
    }
    return newArr;
}

使用map

var oldArr=[{first_name:"Colin",last_name:"Toh"},{first_name:"Addy",last_name:"Osmani"},{first_name:"Yehuda",last_name:"Katz"}];

function getNewArr(){
    return oldArr.map(function(item,index){
        item.full_name=[item.first_name,item.last_name].join(" ");
        return item;
    })
}
6、reduce

reduce(),可以实现累加器的功能,将数组的每个值(从左至右)将其降低到一个值。

统计一个数组中有多少个不重复的单词

不使用reduce时

var arr = ["apple","orange","apple","orange","pear","orange"];
function GETwORDcNT(){
    var obj={};
    for(var i=0,l=arr.length;i<l;i++){
        var item=arr[i];
        obj[item]=(obj[item]+1)||1;
    }
    return obj;
}

使用reduce后

var arr = ["apple","orange","apple","orange","pear","orange"];
function getWordcnt(){
    return arr.reduce(function(prev,next){
        prev[next]=(prev[next]+1)||1;
        return prev;
    },{});
}
  • 未完待续。。。。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 JavaScript 中,可以使用 `concat()` 方法将两个或多个数组合并成一个数组。`concat()` 方法会返回一个新的数组,其中包含了所有合并的数组元素。 例如,假设我们有两个数组 `arr1` 和 `arr2`: ``` var arr1 = [1, 2, 3]; var arr2 = [4, 5, 6]; ``` 要将这两个数组合并成一个数组,可以使用 `concat()` 方法,例如: ``` var arr3 = arr1.concat(arr2); console.log(arr3); // 输出 [1, 2, 3, 4, 5, 6] ``` 如果需要合并多个数组,可以在 `concat()` 方法中传入多个数组,例如: ``` var arr1 = [1, 2, 3]; var arr2 = [4, 5, 6]; var arr3 = [7, 8, 9]; var arr4 = arr1.concat(arr2, arr3); console.log(arr4); // 输出 [1, 2, 3, 4, 5, 6, 7, 8, 9] ``` 需要注意的是,`concat()` 方法不会修改原始数组,而是返回一个新的合并后的数组。如果需要修改原始数组,可以使用 `push()` 方法将合并的数组元素添加到原始数组中,例如: ``` var arr1 = [1, 2, 3]; var arr2 = [4, 5, 6]; for (var i = 0; i < arr2.length; i++) { arr1.push(arr2[i]); } console.log(arr1); // 输出 [1, 2, 3, 4, 5, 6] ``` 这个例子中,我们使用了 `for` 循环和 `push()` 方法将 `arr2` 数组中的元素添加到了 `arr1` 数组中,并修改了原始数组。 ### 回答2: 在JavaScript中,我们可以使用`concat()`方法将两个或多个数组合并成一个新数组。 `concat()`方法接受多个参数,每个参数可以是数组或值。这些参数会按照它们在`concat()`方法中的顺序被合并到新数组中。 下面是一个示例: ``` const array1 = [1, 2, 3]; const array2 = [4, 5, 6]; const array3 = [7, 8, 9]; const newArray = array1.concat(array2, array3); console.log(newArray); // 输出 [1, 2, 3, 4, 5, 6, 7, 8, 9] ``` 在这个例子中,我们有三个数组`array1`,`array2`和`array3`,使用`concat()`方法将它们合并为一个新数组。新数组的顺序是根据参数的顺序进行的。 另外,我们还可以使用`spread`操作符(`...`)将数组合并为一个新数组,如下所示: ``` const array1 = [1, 2, 3]; const array2 = [4, 5, 6]; const array3 = [7, 8, 9]; const newArray = [...array1, ...array2, ...array3]; console.log(newArray); // 输出 [1, 2, 3, 4, 5, 6, 7, 8, 9] ``` 使用spread操作符,我们可以将每个数组中的元素展开,并在新数组中使用它们。最终,我们得到了与前面示例中相同的新数组。 总结起来,我们可以使用`concat()`方法或spread操作符将多个数组合并为一个新数组。无论是哪种方法,最终我们都可以得到一个包含所有合并数组元素的新数组。 ### 回答3: 在JavaScript中,我们可以使用.concat()方法来合并两个或多个数组。 .concat()方法将一个或多个数组与原数组合并,并返回一个新的合并后的数组,而不修改原始数组。 例如,我们有两个数组arr1和arr2: ```javascript var arr1 = [1, 2, 3]; var arr2 = [4, 5, 6]; ``` 我们可以使用.concat()方法将这两个数组合并为一个新的数组: ```javascript var mergedArr = arr1.concat(arr2); console.log(mergedArr); // 输出:[1, 2, 3, 4, 5, 6] ``` 如果我们需要合并多个数组,可以将它们作为.concat()方法的参数传递: ```javascript var arr1 = [1, 2, 3]; var arr2 = [4, 5, 6]; var arr3 = [7, 8, 9]; var mergedArr = arr1.concat(arr2, arr3); console.log(mergedArr); // 输出:[1, 2, 3, 4, 5, 6, 7, 8, 9] ``` 需要注意的是,.concat()方法只会合并一层,如果数组中包含其他数组,它会将这些数组作为整体合并,而不是展开它们。 此外,可以使用ES6的展开运算符(...)来实现数组的合并: ```javascript var arr1 = [1, 2, 3]; var arr2 = [4, 5, 6]; var mergedArr = [...arr1, ...arr2]; console.log(mergedArr); // 输出:[1, 2, 3, 4, 5, 6] ``` 展开运算符将数组的元素逐个展开,并添加到新的数组中。从ES6开始,它成为了一个便捷的语法来合并数组。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值