【问题标题】:What's wrong with this short Javascript code?这个简短的 Javascript 代码有什么问题?
【发布时间】:2013-01-16 03:34:03
【问题描述】:

我正在尝试让简短的 Javascript 代码发出警报并显示 93 而不是 0-93,但它不起作用?

<html>
    <head>
    <script type="text/javascript">
    function numberFromInput(value) {
  return  alert(Number(value.match(/[-]?(\d*)$/).pop()));
}
</script>
</head>
<body>

numberFromInput(0-93);

</body>
</html>

【问题讨论】:

  • 你实际上并没有调用你的函数。如果你想调用它,你也需要在 &lt;script&gt; 标记中这样做。否则,您的numberFromInput(0-93); 只是页面上的一个文本节点。
  • 仍然没有抛出警报
  • 您正在尝试执行value.match,但您传递的值是Number(0 - 93 将评估为-93)

标签: javascript dom-events javascript-framework


【解决方案1】:

您必须调用该函数(您只是将其调用代码显示为内容)。而且您必须将值作为字符串传递(您需要在0-93 周围加上引号):

<script type="text/javascript">
function numberFromInput(value) {
    return alert(Number(value.match(/[-]?(\d*)$/).pop()));
}
numberFromInput("0-93");
</script>

【讨论】:

  • 它适用于我:jsbin.com/izalux/1/edit。您确定您在第一次尝试时确实在字符串周围包含了引号?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-14
  • 1970-01-01
  • 2011-06-01
相关资源
最近更新 更多