为了账号安全,请及时绑定邮箱和手机立即绑定

如何创建显示基于“提示”输入类型的文本的“警报”弹出窗口?

如何创建显示基于“提示”输入类型的文本的“警报”弹出窗口?

POPMUISE 2021-04-14 18:17:42
我是一个初学者,尝试了一些基本的Javascript。我的目标是根据提示输入显示(1.)提示消息(请求名称),然后显示(2.)警报。如果提示输入的是有效名称(字符串),则将出现一个警告框,其中包含文本“谢谢” +名称。否则,警报应显示为文本“您未输入有效名称”。1.提示消息正在起作用,但是,无论输入名称/文本还是数字,2.警报消息都会向我显示相同的文本。换句话说,警报消息不会区分文本字符串或数字,并且始终显示文本“谢谢” +名称。这是我的代码:function EnterName() {  var name = prompt("Enter your name here:");  if (typeof name === "string") {    alert("thank you " + name);  } else if (typeof name === "number") {    alert("you didn't enter a valid name");  }}console.log(EnterName());在提示框中输入数字后,如何使警报框显示“您没有输入有效名称”的任何见解,我们将不胜感激。
查看完整描述

3 回答

?
慕森卡

TA贡献1806条经验 获得超8个赞

提示总是返回一个字符串,您可以尝试将其转换为数字,然后检查它是否为NaN,这意味着它是一个字符串。不过最好在这里使用正则表达式。如果您正在记录名称,则可能还需要返回该名称。


function EnterName() {

  var name = prompt("Enter your name here:");

  var isNum = !isNaN(Number(name));

  if (!isNum) {

    alert("thank you " + name);

  } else {

    alert("you didn't enter a valid name");

  }

  return name;

}

console.log(EnterName());


查看完整回答
反对 回复 2021-04-29
?
冉冉说

TA贡献1877条经验 获得超1个赞

因此,我要强调的一件事是您如何解决这个问题。您正在思考问题,“如果我输入数字,这应该是错误的!为什么它不起作用?!”。之所以这样,是因为提示符将始终返回键入为的值string。您正在查看是否存在取决于语言的“ a”number或“int取决于”。


因此,我们可以将其分为两个问题。查看此人是否是字符串,查看该字符串是否包含数字


下面的代码显示了使用两个函数来实现此目的的好方法


function enterName() { // Javscript functions should always start with a lowercase unless it is a function express and can be invoked using the `new` keyword

  var name = prompt("Enter your name here:");

  if (!checkIfContainsNumber(name)) {

    alert("thank you " + name);

  } else { // if f we dont have a number, we have a valid name, otherwise we are invalid!

    alert("you didn't enter a valid name");

  }

}

所以我们有我们的主要功能,它接收提示,总是返回一个 string


// this solves problem 2, seeing if we have a number inside of our string

function checkIfContainsNumber(myString) {

  return /\d/.test(myString);

}


enterName();

我们的第二个函数checkIfContainsNumber使用匹配数字的正则表达式来解决问题的第二部分(d在这种情况下)


查看完整回答
反对 回复 2021-04-29
  • 3 回答
  • 0 关注
  • 149 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信