我对JavaScript还是很陌生,我不太确定自己在做什么错,任何帮助将不胜感激。
var array = [3, 5, 6, 10, 20];
function array (arr, num) {
for (var i=0 ; i < array.length; i++);
return true;
} else {
return false;
}
}
arr(10);
答案 0 :(得分:-2)
您实际上不必为此使用循环。您可以使用indexOf()函数。 https://www.w3schools.com/jsref/jsref_indexof_array.asp
您的代码如下:
var numbers = [3, 5, 6, 10, 20];
function isNumberInList(numbers, number) {
var result = false;
if(numbers.indexOf(number)!=-1){
result = true;
}
return result;
}
答案 1 :(得分:-2)
使用indexOf
检查对象是否在Array
中。 indexOf
将返回元素的index
(如果它在Array
中,则返回-1
,如果元素不在 function arrayContains(arr, obj) {
return arr.indexOf(obj) != -1;
}
中。
<input type="text" id="num">
<br/>
<input type="button" value="Check if value is one of the first nine terms of the Fibonacci sequence" onClick="check()"/>
<br/>
<span id="result"></span>
<script>
var array = [1, 1, 2, 3, 5, 8, 13, 21, 34];
function arrayContains(arr, obj) {
return arr.indexOf(obj) != -1;
}
var result = document.getElementById("result");
function check(){
var num = document.getElementById("num").value;
if(num.trim().length&&!isNaN(num)){
if(arrayContains(array, parseInt(num, 10))){
result.innerHTML = "Number is one of the first nine terms of the Fibonacci sequence.";
} else {
result.innerHTML = "Number is <b>not</b> one of the first nine terms of the Fibonacci sequence.";
}
} else {
result.innerHTML = "<b style='color: red;'>Input must be a number!</b>";
}
}
</script>
{{1}}