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());
推荐阅读