一.数组去重
// 数组去重1.
var arr1 = [1, 2, 3, 2, 4, 1];
console.log(Array.from(new Set(arr1)));
console.log([...new Set(arr1)]);
function unique(arr) {
return Array.from(new Set(arr1))
}
console.log('去重1', unique(arr1));
// 2.indexOf
var arr2 = [1, 2, 3, 2, 4, 1];
function indexOf2(arr) {
var brr = [];
for (var i = 0; i < arr.length; i++) {
if (brr.indexOf(arr[i]) == -1) {
brr.push(arr[i]);
}
}
return brr;
};
console.log('去重2', indexOf2(arr2))
// 3.sort
var arr3 = [1, 2, 3, 2, 4, 1];
function sprt3(arr) {
arr = arr.sort();
var brr = [];
for (var i = 0; i < arr.length; i++) {
if (arr[i] !== arr[i - 1]) {
brr.push(arr[i]);
}
}
return brr;
}
console.log('去重3', sprt3(arr3))
二.找出多维数组中的最大值
// 找出多维数组中的最大值
function fnArr(arr){
var newArr = [];
arr.forEach((item,index) => {
newArr.push(Math.max(...item))
});
return newArr;
};
var arr1 = [
[4,5,1,3],
[2,5,4,3,4,8,1],
[6,5,4,3,8,9],
[12,4,57,100,120]
];
console.log(fnArr(arr1));
三.给字符串对象新增一个addPrefix函数,当传入一个字符串str时,它会返回新的带有指定前缀的字符串,例如
console.log("world".addPrefix("hello"))
控制台输出:"helloworld"
String.prototype.addPrefix = function (str) {
return str + this;
}
console.log('word'.addPrefix('hello'));
四.找出字符串中出现最多次数的字符以及次数
var str = '1aaabbbbccccccssssssddddddddddd';
var obj = {};
for (i = 0; i < str.length; i++) {
var char = str.charAt(i);
if (obj[char]) {
obj[char]++
} else {
obj[char] = 1;
}
}
console.log(obj);
// 统计出来最大值
var max = 0;
for (var key in obj) {
if (max < obj[key]) {
max = obj[key];
}
}
// 拿最大值对比
for (var key in obj) {
if (obj[key] == max) {
console.log('最多的字符是' + key, '出现次数是', max)
}
}