JS简单算法题

1.字符串翻转
先把字符串转化成数组,再借助数组的reverse方法翻转数组顺序,最后把数组转化成字符串

function reverseString(str){
	console.log("原来");
	console.log(str);
	str=str.split('').reverse().join('');
	console.log("翻转后");
	return str;
}

console.log("字符串翻转");
console.log(reverseString("你是年少的欢喜"));

运行结果:
字符串翻转
2.单词首字母大写,其它保持不变

	function titleCase(str){
	let astr=str.toLowerCase().split(" ");
	for(let i=0;i<astr.length;i++){
	//substring是拼接字符串,参数begin至end
		astr[i]=astr[i][0].toUpperCase()+astr[i].substring(1,astr.length);
	}
	let string=astr.join(" ");
	return string;
}
console.log(titleCase("i love you very much."));

运行结果:
首字母大写
3.大数组中包含了4个小数组,分别找到每个小数组中的最大值,然后把它们串联起来,形成一个新数组

function largestOfArrays(arr){
	console.log("原来的数组");
	console.log(arr);
	let newArray=[];
	for(let i=0;i<arr.length;i++){
	//将数字最大的放在最前面
		arr[i].sort(function(a,b){
			return b-a;
		});
		//将每个数组的最大值放入新数组中
		newArray.push(arr[i][0]);
	}
	console.log("新数组:");
	return newArray;
}

console.log(largestOfArrays([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]));

运行结果:
组成最大值新数组
4.如果数组第一个字符串元素包含了第二个字符串元素的所有字符,函数返回true

function mutation(arr){
	let astr=arr[0].toLowerCase();
	let bstr=arr[1].toLowerCase();
	let flag='';
	console.log(astr);
	console.log(bstr);
	for(let i=0;i<bstr.length;i++){
		//只要匹配到一个不在里面就没有必要继续查,利用break跳出循环
		if(astr.indexOf(bstr[i])==-1){
			flag=false;
			break;
		}
		else{
			flag=true;
		}
	}
	return flag;
}


console.log(mutation(["hello", "eo"]));

运行结果:
字符匹配

关注公众号,获取更多资源
在这里插入图片描述

每天进步一点点,开心也多一点点

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

white_poland

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值