菁英职教网 学历 中专

web前端培训:js算法面试es6实现

发布时间: 2022-03-22 23:59:32

原标题:web前端培训:js算法面试es6实现

1.js统计一个字符串中出现频率最高的字母/数字。

let str = ' asdfghjklaqwertyuiopiaa ';

const strChar = str => {

让string = [...str],

最大值=“”,

obj = {},

max = 0;

string.forEach(value => {

obj[值]= obj[值] ==未定义?1:对象[值] + 1

if (obj[value] > max) {

max = obj[值]

最大值=值

}

})

返回maxValue

}

console.log(strChar(str)) // a

2.阵列重复数据消除

2.1、外语

设arr = ['1 ',' 2 ',' 3 ',' 1 ',' a ',' b ',' b']

const unique = arr => {

让obj = {}

arr.forEach(value => {

obj[value] = 0

})

返回Object.keys(obj)

}

console.log(unique(arr)) // ['1 ',' 2 ',' 3 ',' a ',' b']

2.2、过滤器

设arr = ['1 ',' 2 ',' 3 ',' 1 ',' a ',' b ',' b']

const unique = arr => {

return arr.filter((ele,index,array) => {

返回index === array.indexOf(ele)

})

}

console.log(unique(arr)) // ['1 ',' 2 ',' 3 ',' a ',' b']

2.3、设置

设arr = ['1 ',' 2 ',' 3 ',' 1 ',' a ',' b ',' b']

const unique = arr => {

返回[...新集合(arr)]

}

console.log(unique(arr)) // ['1 ',' 2 ',' 3 ',' a ',' b']

2.4、减少

设arr = ['1 ',' 2 ',' 3 ',' 1 ',' a ',' b ',' b']

const unique = arr.reduce((map,item) => {

map[item] = 0

返回地图

}, {})

console . log(object . keys(unique))//[' 1 ',' 2 ',' 3 ',' a ',' b '][关注上思谷,轻松学会]

3.翻转绳子

let str = " Hello Dog

const reverseString = str =>{

返回[...str]。反转()。join(" ");

}

console . log(reverse string(str))//goD olleH

4.阵列中的最大差异

4.1、外语

设arr = [23,4,5,2,4,5,6,6,71,-3];

常数差= arr => {

设min = arr[0],

max = 0;

arr.forEach(value => {

if(值<最小值)min =值

if(值>最大值)最大值=值

})

返回max-min;

}

console . log(difference(arr))//74

4.2、最大、最小

设arr = [23,4,5,2,4,5,6,6,71,-3];

常数差= arr => {

设max = Math.max(...arr),

min = Math.min(...arr);

返回max-min;

}

console . log(difference(arr))//74

5.交换两个没有临时变量的整数。

5.1、数组解构

设a = 2,

b = 3;

[b,a] = [a,b]

console.log(a,b) // 3 2

5.2.算术运算(加法和减法)

输入a = 2,b = 3,输出a = 3,b = 2

设a = 2,

b = 3;

const swop = (a,b) => {

b = b-a;

a = a+b;

b = a-b;

return [a,b];

}

console.log(swop(2,3)) // [3,2]www.atguigu.com

5.3.逻辑运算

设a = 2,

b = 3;

const swop = (a,b) => {

a ^= b;//x首先存储x和y的信息。

b ^= a;//保持X不变,用X的XOR对Y的原值求逆,使之等于X的原值。

a ^= b;//保持Y不变,用X异或对Y的原值求逆,使之等于Y的原值【专注尚硅谷,轻松学会】

return [a,b];

}

console.log(swop(2,3)) // [3,2]

6.排序(从小到大)

6.1.气泡分类

设arr = [43,32,1,5,9,22];

const sort = arr => {

arr.forEach((v,i) => {

for(设j = I+1;j <数组长度;j++) {

if (arr[i] > arr[j]) {

[arr[i],arr[j]] = [arr[j],arr[i]]

}

}

})

返回arr

}

console.log(sort(arr)) // [1,5,9,22,32,43]

文章来自web前端学习圈。

推荐阅读:

前端开发的JS规范

面向前端开发的JS原型知识共享

前端开发的JS阵列去重方法返回搜狐查看更多。

负责编辑:

温馨提示:
本文【web前端培训:js算法面试es6实现】由作者职教君提供。该文观点仅代表作者本人,菁英职教网系信息发布平台,仅提供信息存储空间服务,若存在侵权问题,请及时联系管理员或作者进行删除。
我们采用的作品包括内容和图片部分来源于网络用户投稿,我们不确定投稿用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的权利,请联系我站将及时删除。
内容侵权、违法和不良信息举报
Copyright @ 2024 菁英职教网 All Rights Reserved 版权所有. 七品教育网站地图xml 留求艺网站地图xml 湘ICP备17021685号