javascript数组8>;50返回真值
有人能解释一下,为什么javascript返回true?数组是全局定义的javascript数组8>;50返回真值,javascript,arrays,sorting,return,bubble-sort,Javascript,Arrays,Sorting,Return,Bubble Sort,有人能解释一下,为什么javascript返回true?数组是全局定义的 console.log(arr[j] + ">" + arr[j + 1]); // 8>50 console.log(arr[j] > arr[j + 1]); // true 只有当数字10返回true时才会发生这种情况 我在bubbleSort算法中需要它,并用parseInt(arr[j])>parseInt(arr[j+1])修复了这个问题,但我认为会有
console.log(arr[j] + ">" + arr[j + 1]); // 8>50
console.log(arr[j] > arr[j + 1]); // true
只有当数字10返回true时才会发生这种情况
我在bubbleSort算法中需要它,并用parseInt(arr[j])>parseInt(arr[j+1])
修复了这个问题,但我认为会有更好的解决方案
非常感谢!:) 您有一个字符串数组,您正在对字符串进行排序。您可以选择一个而不是
parseInt
(对于某些数字,这也需要一个基数)。非常感谢@adiga:)现在我可以找到解决办法了!:)如果你想把它缩短一点,可以使用操作符:+arr[j]>+arr[j+1]
我通过从字符串数组到数字数组的转换解决了这个问题<代码>arr=arr.map((arr)=>+arr)代码>