欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JS算法题目【每日更新】

程序员文章站 2022-06-09 18:46:02
...

1.用JavaScript实现简单的用户登陆验证

<script>
	function submitHandler(){
		if(document.getElementById("username").value==""){
			alert("请输入用户名");
			return false;
		} else if(document.getElementById("password").value==""){
			alert("请输入密码");
			return false;
		} else {
			alert("提交成功");
			return true;
		}
	}
</script>
<form>
	用户名<input type="text" id="username"/><br>
	密码<input type="password" id="password"/><br>
	<input type="submit" onclick="submitHandler()" value="提交"/>
</form>

2.请填充代码,使mySort()能使传入的参数按照从小到大的顺序显示出来。

function mySort(){
	var tags = new Array();
	for(var i = 0;i<arguments.length;i++){
		tags.push(arguments[i]);
	}
	tags.sort(function(compare1,compare2){
		return compare1-compare2;
	});
	return tags;
}
var result = mySort(50,11,16,32,24,99,57,100);
console.info(result);

3.请给Array本地对象增加一个原型方法,它用于删除数组条目中重复的条目(可能有多个),返回值是一个包含被删除的重复条目的新数组。

Array.prototype.del(){
	var arr = [];
	for(var i = 0;i<this.length;i++){
		for(var j = i+1;j<this.length;j++){
			if(this[i]==this[j]){
				arr.push(this.splice(j,1)[0]);
				// 先前我也不咋地明白this.slipce(j,1)[0]是什么意思,为什么还要[0]? this.slipce(j,1)就是删除第j个,就删除1个,[0]就是把删除的那个元素取出来,push到arr数组里。
			}
		}
	}
	return arr;
}

4.写一个数组去重函数

function del(arr){
	var newArr = [];
	for(var i = 0;len = arr.length;i++){
		if(newArr.indexOf(arr[i]==-1)){
			newArr.push(arr[i]);
		}
		return newArr;
	}
}

ES6去重:

Array.prototype.deleteSame = () => {
	return Array.from(new Set(arr))
};
var arr = [1,2,3,4,4,5];
console.log(arr.deleteSame());
相关标签: 面试题 js