美文网首页JavaScript相关文章
前端常见的js数组操作面试题集合

前端常见的js数组操作面试题集合

作者: Alexa_老王 | 来源:发表于2019-04-19 18:03 被阅读30次

前端常见的js数组操作面试题集合

一、按要求分割数组

//实例: 将 “刘备,张飞,关羽” 一个字符串数组以“|”分割的形式,输出为 “刘备|张飞|关羽”    注:使用两种方式实现

(1) for循环累加方法

var arr1 = ["刘备","张飞","关羽"];

var separator = "|";

//通过for循环累加

var str = arr1[0];

for(var i=1;i<arr1.length;i++){

  str += separator+arr1[i];

}

console.log(str); //返回值为: 刘备|张飞|关羽

(2) join()可以把数组中的元素链接成字符串

var arr2 = ["刘备","张飞","关羽"];

console.log(arr2.join("|")); // 返回值为: 刘备|张飞|关羽

二、反向输出数组

//实例: 将一个字符串数组 ["a", "b", "c", "d"] 反转为 [ "d","c","b","a"]    注:使用两种种方式实现

(1) 直接使用 reverse()数组函数

var arr1 = ["a", "b", "c", "d"];

console.log(arr1.reverse()); // 返回值为:["d", "c", "b", "a"]

(2)正向遍历,反向添加

var arr2 = ["a", "b", "c", "d"];

for(var i=0;i<arr2.length/2;i++){

var temp = arr2[i];

arr2[i] = arr2[arr2.length-1-i];

arr2[arr2.length-1-i] = temp;

}

console.log(arr2); // 返回值为:["d", "c", "b", "a"]

三、去掉数组中不符合要求的元素

//实例: 在工资数组 [1500, 1200, 2000, 2100, 1800] ,把工资超过2000的删除 输出新数组

var arr = [1500, 1200, 2000, 2100, 1800];

//步骤: 1.利用filter()形成一个数组;2.return true;3.组成的数组;

var newArr = arr.filter(function (ele, i, array) {

//2000以上返回false;

if(ele<2000){

return true;

}else{

return false;

}

});

console.log(newArr); // 返回值为: [1500, 1200, 1800]

四、找到某个元素在数组中的下标值

//实例: 在数组中["c", "a", "z", "a", "x", "a"]找到数组中每一个“a”元素出现的位置

var arr = ["c", "a", "z", "a", "x", "a"];

//遍历数组(for/while/do...while)  forEach();

arr.forEach(function (ele, index, array) {

//如果元素等于“a”,那么就输出索引值;

if("a" === ele){

console.log(index);  // 返回值:  1  3  5

}

});

五、数组去重

//实例: 编写一个方法去掉一个数组的重复元素

var arr = ["鸣人","小樱","佐助","佐助","鸣人","小樱"];

//思路:1.定义一个新数组,2.遍历老数组,3.判断,如果新数组里面没有老数组的元素就添加,否则就不添加

var newArr = [];

//遍历老数组

arr.forEach( function (ele,index,array) {

    //检测老数组中的元素,如果新数组中存在就不添加了,不存在才添加;

    if( newArr.indexOf(ele) === -1){ //不存在就添加;(去新数组中查找元素索引值,如果为-1就是没有)

      newArr.push(ele);

    }

});

console.log(newArr); // 返回值为: ["鸣人", "佐助", "小樱"]

相关文章

  • 前端常见的js数组操作面试题集合

    前端常见的js数组操作面试题集合 一、按要求分割数组 //实例: 将 “刘备,张飞,关羽” 一个字符串数组以“|”...

  • 前端Js常见的数组函数集合

    前端Js常见的数组函数集合 1、instanceof() : 检测一个对象是否是数组(用来对付复杂数据类型) va...

  • 面试必备——Java集合框架

    Java集合框架面试题 常见集合 集合可以看作是一种容器,用来存储对象信息。数组和集合的区别:(1)数组长度不可变...

  • JS文集的目录

    js基础心法 深浅拷贝(递归)深浅拷贝(首层浅拷贝) js 数据处理 数组对象查找的常见操作数组对象去重的常见操作...

  • JS数组常见操作

    知识点

  • 常见前端JS操作

    1、获取属性 原生let id = elem[0].getAttribute("data");jquery$('#...

  • js数组的常见操作

    数组去重 for 循环+ indexOffunction unique(arr) { let uniqueA...

  • 前端相关大杂烩

    前端基础面试题(JS部分) 前端基础面试题(JS部分)学习 React.js 比你想象的要简单 原文地址:Lear...

  • 前端常见的字符串操作面试题

    前端常见的字符串操作面试题 一、字符串去重 var str = "ahahggagsssjjj"; functio...

  • 前端相关技术点

    1.整理了一份关于前端的一些常见面试题(2017) 我遇到的前端面试题2017 2.用JS获取地址栏的参数(超级简...

网友评论

    本文标题:前端常见的js数组操作面试题集合

    本文链接:https://www.haomeiwen.com/subject/ajpcgqtx.html