1、将一个字符串数组输出为|分割的形式,比如“刘备|张飞|关羽”。使用两种方式实现。
var arr = ["刘备","张飞","关羽"];
var str = arr[0];
for(var i=1;i<arr.length;i++){
str += "|"+ arr[i];
}
console.log(str);
2、有一个工资的数组[1500,1200,2000,2100,1800],把工资超过2000的删除。
var arr = [1500,1200,2000,2100,1800];
var arr2 = arr.filter(function (ele,index,array) {
if(ele<2000){
return true;
}
return false;
});
console.log(arr2);
3. [“c”,”a”,”z”,”a”,”x”,”a”]找到数组中每一个元素出现的次数。
思路:用json来显示某个元素出现的次数。a:3,b:4,c:5...
原理:设置一个空的json,判断数组中的元素,是否在json中有该属性
如果不存在,就没有该属性,添加该属性,并为其赋值为1
如果存在,有该属性,让他的值+1
var arr = ["c","a","z","","x","a"];
var json = {};
arr.forEach(function (ele,index,array) {
if(json[ele] == undefined){
json[ele] = 1;
}else{
json[ele] +=1;
}
});
console.log(json);
4. 编写一个方法,去掉一个数组的重复元素(面试题)
思路:创建一个新数组,两个for循环,第一个遍历老数组,第二个遍历新数组。如果新数组中没有老数组的元素,老数组中的元素可以添加进新数组
var arr = ["关羽","关羽","张飞","张飞","刘备","刘备"];
function qc(arr){
var newArr = [];
for(var i=0;i<arr.length;i++){
var bool = true;
for(var j=0;j<newArr.length;j++){
if(newArr[j] == arr[i]){
bool = false;
}
}
if(bool == true){
newArr.push(arr[i]);
}
}
return newArr;
}