翻转字符串
1 2 3
| function reser(str){ return [...str].reverse().join('') }
|
判断回文字符串
1 2 3 4 5 6 7
| function Mosl(str){ let stri = '' for(let i= str.length; i>=0; i--){ stri+= str.charAt(i) } return str === stri }
|
生成指定长度的字符串
1 2 3 4 5 6 7 8
| function randomStr(n){ let strr = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789' let str = '' for(let i=0; i<n; i++){ str+= strr.charAt(Math.round(Math.random()* strr.length)) } return str }
|
数组去重
1 2 3
| function deWeight(arr){ return [... new Set(arr)] }
|
数组求最大值
1 2 3
| function Max(arr){ return Math.max(...arr) }
|
冒泡排序
1 2 3 4 5 6 7 8 9 10
| function bubbling(arr){ for(let i=0; i<arr.length; i++){ for(let j=0; j< arr.length - 1; j++){ if(arr[j]> arr[j+1]){ [ arr[j], arr[j+1]] = [ arr[j+1], arr[j]] } } } return arr }
|
数组排序,从小到大
1 2 3 4
| function arrSort(arr){ arr.sort((a,b)=> a-b) return arr }
|
浅复制
1 2 3 4 5 6 7
| function copy(arr){ let newObj = arr instanceof Array ? [] : {} for(let i in arr){ newObj[i] = arr[i] } return newObj }
|
深复制
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| function deepCopy(arr){ let newObj = arr instanceof Array ? [] : {} for(let i in arr){ if( typeof arr[i] == 'object'){ deepCopy(arr[i]) }else{ newObj[i] = arr[i] } } } function copy(arr){ return JSON.parse(JSON.stringify(arr)) }
|
删除重复的字符
1 2 3
| function delStr(str){ return [...new Set([...str])].join('') }
|
两个相邻相同的字符串抵消
1 2 3 4 5 6 7 8 9 10 11
| function tongDel(str){ let arr = [...str] for(let i=0; i<arr.length; i++){ for(let j=0; j<arr.length - 1; j++){ if(arr[j] === arr[j+1]){ arr.splice(j,2) } } } return arr.join('') }
|
删除相邻相同的字符串
1 2 3 4 5 6 7 8 9 10
| function delStr(str){ let arr = [] , newStr for(let i=0; i<str.length; i++){ if(str.charAt(i) !== newStr){ arr.push(str[i]) newStr = str[i] } } return arr.join('') }
|
写个方法 两个数字变量相互交互值,不借助第三个变量
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| function swop(num1,num2){ [num1,num2] = [num2, num1] return { num1, num2 } } function newSwop(num1,num2){ num2 = [num1, num1 = num2][0] return { num1, num2 } }
|
统计字符串中次数最多的字母
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| function statistics(str){ let arr = [...str] let obj = {} , num = 0 , max = 0 for(let j=0; j<arr.length;j++){ if(obj[arr[j]]){ obj[arr[j]]++ }else{ obj[arr[j]] = 1 } } num = Math.max(... Object.values(obj)) Object.keys(obj).find( (k)=>{ if(obj[k] === num){ max = k } }) return max }
|
最后说明:这只是本人自己的一些使用,有不足的地方,欢迎大家前来指正