function bigNumberAdd(n1,n2)
{
let result="";
let sn1=n1.split("");
let sn2=n2.split("");
let carry=false;
while(sn1.length||sn2.left||carry)
{
// 每次将最后的数字进行相加,使用~~的好处是,即使返回值为 undefined 也能转换为 0
carry+=~~sn1.pop()+~~sn2.pop();
// 取加法结果的个位加入最终结果
result+=carry%10+result;
// 判断是否需要进位,true 和 false 的值在加法中会被转换为 1 和 0
carry = carry > 9
}
return result;
}
//var arr=[1,2,[3,4,[5,6,7]]]
function flattenArr1(arr)
{
//字符串方法实现数组的扁平化
return arr.toString().split(",");
}
//console.log(flattenArr1(arr));
var res=[];
function flattenArr2(arr)
{
//递归实现数组的扁平化
for(var i=0;i<arr.length;i++)
{
if(Array.isArray(arr[i]))
{
flattenArr2(arr[i]);
}
else
{
res.push(arr[i]);
}
}
}
//flattenArr2(arr);
//console.log(res);
//var arr=[1,1,1,2,3,5,6,7]
function uniqueArr1(arr)
{
if(!arr)
return
var res=[]
arr.forEach(item=>{
if(res.indexOf(item)===-1)
res.push(item)
})
return res;
}
function uniqueArr2(arr)
{
if(!arr)
return
return [...new Set(arr)];
}
//console.log(uniqueArr1(arr));
//console.log(uniqueArr2(arr));
//求两个数的最大公约数
function getMaxCommonDivisor(a,b)
{
if(b===0)
return a;
//辗转相除法求
return getMaxCommonDivisor(b,a%b);
}
//console.log(getMaxCommonDivisor(36,216))
//求两个数的最小公倍数
function getMinCommonMultiple(a,b)
{
return a*b/getMaxCommonDivisor(a,b);
}
//实现indexOf方法
function myIndexOf(arr,val)
{
if(!Array.isArray(arr))
return
var len=arr.length;
for(var i=0;i<len;i++)
{
if(arr[i]==val)
return 1;
}
return -1;
}
//var arr=[1,2,3];
//console.log(myIndexOf(arr,5));
//判断一个字符串是否为回文字符串?(回文字符串就是从右边和从左边读都一样的如level)
function isPalindrome(str)
{
reverseStr=str.reverse();
return str===reverseStr
}
//寻找一段文章中出现次数最多的单词
function findMostWord(article) {
// 合法性判断
if (!article) return;
// 参数处理
article = article.trim().toLowerCase();
let wordList = article.match(/[a-z]+/g),
visited = [],
maxNum = 0,
maxWord = "";
article = " " + wordList.join(" ") + " ";
// 遍历判断单词出现次数
wordList.forEach(function (item) {
if (visited.indexOf(item) < 0) {
let word = new RegExp(" " + item + " ", "g"),
num = article.match(word).length;
if (num > maxNum) {
maxNum = num;
maxWord = item;
}
}
});
return maxWord + " " + maxNum;
}
var article="test test tesat af ag agas"
console.log(findMostWord(article));
JS经典面试题
最新推荐文章于 2024-04-10 00:58:34 发布