javascript - 防止用户在输入的任何地方输入数字。如何?
问题描述
我收到用户的输入
我想防止用户在输入的任何地方输入数字。
目前停留在这个:
let name = prompt('Enter your name:');
function isNumber(str) {
let replaced = str.replace(/\D/g, ""); //deleting all symbols from a String
return parseInt(replaced); //parsing string numbers to actual numbers -> returning
}
while (typeof isNumber(name) === 'number') {
name = prompt("You can't put NUMBERS in name input! try again: ");
}
解决方案
这比尝试删除所有非数字以查看是否还有数字要简单得多
let name = prompt('Enter your name:');
while (name.replace(/\d/g,"") !== name) {
name = prompt("You can't put NUMBERS in name input! try again: ");
}
或者 .match 或 .test 使用数字正则表达式
推荐阅读
- c# - 压缩超过 2 个可观察序列的问题
- c# - ASP.Net Core 2 中的全局变量
- asp.net-mvc - ASP.NET MVC 路由 - 添加站点名称?
- microsoft-teams - 在 Microsoft Teams 中保存连接器配置时出现空异常
- php - 在 mysqli 查询的表中显示数组结果
- conda - 无法使用 CondaVerificationError 创建新环境:ncurses 的包已损坏
- java - 物品没有按需要放置。[爪哇]
- django - Stripe Django:如何通过计划向现有客户收费
- php - 我想将 json 数据加载到 mysql 数据库,但它需要太多时间
- php - Yii2如何根据客户端的时区显示时间?