這是一個糟糕的情況。
我想檢查數字是否在給定的數字數組中。 但它返回神祕的結果。
這是我捕獲的控制檯鏡像。
我還檢查數組的類型和元素。 藍色包含數字類型元素,紅色包含字符串類型元素。 對於單個數字,藍色數字是數字類型,黑色數字是字符串類型。 但類型不影響結果的任何內容。
檢查完所有結果後,我找出10以上的數字,兩位數,出現問題。 1〜10個數字不會造成奇怪的情況。
什麼問題?我怎樣才能解決這個問題?
這是我的代碼。 這是長碼的一部分,所以我稍微調整一下以便單獨理解。
object = {'2': obj,'3': obj,'10': obj,'11': obj,...}
var array = Object.keys(object);
var newArray = array.map(function(x) {
return parseInt(x, 10)
});
var newNumber = parseInt(number, 10) // number is from above code, just a number.
console.log(newArray);
console.log(newNumber);
console.log(newNumber in newArray);
console.log(array);
console.log(number.toString());
console.log(number.toString() in array);
`
不能看到你的代碼,所以誰知道你做錯了 –
對不起。我添加了我的代碼。這是長碼的一部分,所以我很難解釋它。如果需要任何其他信息,請讓我知道。 –
你不能使用'in'來檢查數組中的值,你可以使用'indexOf'來換取 – adeneo