如果不是数字,则无法比较数组值

普拉纳夫·吉图里(Pranav Jituri)

我正在尝试创建Windows Store应用程序,但无法比较array元素。事情是我不想比较字符串,但它正在这样做。下面是比较代码:

function sort()
{
var ar = NumList.value;
var flag=0;
var arr = ar.split(",");
for (var i = 0; i < arr.length; i++)
{
    if (typeof (+arr[i]) === 'number')
        flag = 0;
    else
        flag++;
}
if (flag == 0) {
    InsertionSort();
    QuickSort();
    MergeSort();
    SelectionSort();
    BubbleSort();
}
else
{
    error.showAsync();
}
 }

即使Array中有一个字符串元素,它仍在继续并对元素进行排序。有人可以帮我从这里出去吗?

铁木

一元+运算符arr[i]始终将其转换为数字,即使该值是一个字符串也是如此,因为字符串会转换为NaNtypeof NaN === "number"因此flag将永远是0

您可以NaN改为检查

if (!isNaN(+arr[i])) {...}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如果比较值出现在另一层中,则无法删除数组

如果非负数字值有加号,则无法转换为 jsonb

如果值已存在于信息数组中,则无法添加检查以限制值

Typescript:数组的函数查找正常,但如果我使用if语句检查它是否返回值,则无法正常工作

如果值包含“”,则无法解析csv文件

如果没有$ _POST值,则无法使SQLI插入NULL

在python中比较两个数组字符串值,如果不是则将值添加到数组中

如果值不是数字,则查询替换数据

如果我更改了数字输入的格式,则无法使用闪亮的书签

如果类名是数字,则无法按类名获取元素

如果表名包含数字字符,则无法从表中获取数据

如果矩阵而不是数据框,则无法打印R图中的标记点

如果值没有小数点,则无法在列值中追加 0

如果一个值是空字符串,则无法对Angularjs中的值求和

Laravel回显数组的数字而不是值

数组呈现为数字而不是值

比较具有多个数字而不是数组的变量int

如果dynamodb中不存在该项,则无法返回数组

如果将类型(数组变量)转换为类型(OleStr),则无法将变量转换

如果是嵌套数组,则无法修改数据集属性

如果单元格包含值 VBA,则无法删除它们

如果xmlhttprequest.responseText等于特定值,则无法停止功能

如果用逗号分隔键,则无法在字典中按键查找值

Scala:为什么如果从GroupBy创建Map,则无法更改Map中的可变值

如果在选择字段中选择空白值,则无法保存。(宝石祖先)

Azure Functions代理-如果值包含JSON,则无法设置HTTP标头

如果两个值相同,则无法找到两个单选按钮

PowerShell&XML:如果文本前面带有点,则无法提取InnerText值

向ArrayList添加元素,如果元素在ArrayList中具有相同的值,则无法添加