gpt4 book ai didi

javascript - 使用正则表达式区分输入中的数字和单词

转载 作者:行者123 更新时间:2023-11-28 18:15:16 24 4
gpt4 key购买 nike

我正在尝试创建一个简单的程序,允许用户输入数字或单词,并按字母顺序(如果是单词)或数字(如果是数字)对它们进行排序。为此,我需要一个能够区分数字和单词的输入,例如 10、-10、0.5 和 -0.5 将被评估为数字,而其他所有内容都将被视为单词。

到目前为止我已经想出了这个:

function recordUserInput() {
userInput = $('input').val();

if (userInput.charAt(0).match(/^(-)?[0-9]/)) {
console.log('number', userInput);
}
else {
console.log('text', userInput);
}

}

但是,负数仍被计算为文本。

我做错了什么?

最佳答案

使用一元+。如果它返回 NaN,则它不是数字。

var type = isNaN(+userInput) ? 'text' : 'number';

parseFloat 可能不是最佳的。它从左到右解析寻找数字并在非数字处停止。它收集到的东西会变成一个数字。 parseFloat('123a') === 123

关于javascript - 使用正则表达式区分输入中的数字和单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40845605/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com