JavaScript comparison
JavaScript comparison
本文关键字:comparison JavaScript 更新时间:2023-09-26
为什么我的比较不工作?答案应该是8,但它返回0。
function findMissing(missingArray){
var getArray = missingArray.sort();
var myArray = [0,1,2,3,4,5,6,7,8,9];
for(var i=0 ; i< myArray.length ; i++){
for(var j=0 ; j< getArray.length ; j++){
if(myArray[i] != getArray[j]){
return i;
}
}
}
}
findMissing([0,3,4,5,7,2,9,1,6]);
您可以简单地使用1个循环和数组搜索来查找缺失的元素。循环遍历两个数组,每次都会更改索引,因此比较无效。
没有过分装饰 function findMissing(missingArray){
var getArray = missingArray.sort();
var myArray = [0,1,2,3,4,5,6,7,8,9];
for(var i=0 ; i< myArray.length ; i++){
if(getArray.indexOf(myArray[i])==-1)
return i;
}
}
alert(findMissing([0,3,4,5,7,2,9,1,6])); //8
编辑,附加版本实际上,您可以创建一个包含所有缺失元素的数组,而不仅仅是一个。这很好
function findMissing(missingArray){
var getArray = missingArray.sort();
var myArray = [0,1,2,3,4,5,6,7,8,9];
var returnArray=[];
for(var i=0 ; i< myArray.length ; i++){
if(getArray.indexOf(myArray[i])==-1)
returnArray.push(myArray[i]);
}
return returnArray;
}
小提琴
function findMissing(missingArray){
var getArray = missingArray.sort();
var myArray = [0,1,2,3,4,5,6,7,8,9];
for(var i=0 ; i< myArray.length ; i++){
if(myArray[i] != getArray[i]){
return i;
}
}
}
alert(findMissing([0,3,4,5,7,2,9,1,6]));
当i=0
与j=1
、myArray[0]=0
与getArray=3
不相等时,则
myArray[i] != getArray[j]
求值为真,函数返回i
即0
。
相关文章:
- 将jsp文件下拉列表中的选定项分配给一个java变量(比如String selection)
- 借助asp.net验证或java脚本对多个文本进行验证
- java.net和javascript之间正则表达式的差异
- 如何从Java/scala调用js美化程序
- 如何使用json将对象列表从java转换为javascript
- Java脚本时间添加
- WebDriverException:tinyMCE未在selenium Web driver java中定义
- 如何将字符串值从php页面发送到java脚本页面
- 如何使用Spring MVC将Facebook返回的响应数据保存在Java类中
- 如何轻松地将服务器端变量从Java代码转移到客户端代码
- DOM事件通过JSON转换为java
- 在 Java 中的 JavaScript 函数中插入 Wicket 值
- JSON分析错误:Java中AJAX、Javascript和Servlet的意外EOF
- java脚本在Chrome和其他浏览器中对LocaleTimeString的不同行为
- 错误405:向Java控制器(Ajax)发送JSON时找不到POST方法
- Java-彩票统计解析器
- 如何将变量数据从Java类获取到JavaScript
- Java脚本将URL转换为已保存的URL时出错
- 将这些正则表达式从javascript转换为Java
- 如何使用Java脚本创建提交按钮's的拖放功能