无法通过将参数传递给 Javascript 函数来理解行为
Can not understand behaviour by passing arguments to Javascript functions
考虑遵循包含Javascript的HTML片段。将此代码粘贴到此处以查看在 W3Schools 的 Tryit 编辑器中运行的内容。
<!DOCTYPE html>
<html>
<body>
<a href="javascript: submitQuickAddForm('00001030')">Number with quotes</a><br>
<a href="javascript: submitQuickAddForm(00001030)">Number without quotes</a> <br>
<a href="javascript: submitQuickAddForm(hello)">Text with quotes</a> <br>
<a href="javascript: submitQuickAddForm('hello')">Text without quotes</a>
<script>
function submitQuickAddForm(itemNumber) {
alert(itemNumber);
}
</script>
</body>
</html>
第一个链接00001030。第二:536 我完全听不懂?!第三个链接不执行任何操作(可能没有指定参数的类型)最后一个链接再次运行良好(输出:你好)
那么第二个和第三个链接是怎么回事呢?
第一个是字符串,第二个被解释为八进制数,因为前导为 0。
编辑:从@RobG到问题的解释:"但为什么它不能只发出00001030或至少1030警报?为什么是536?
因为Number.prototype.toString
假设基数为 10
更新:第三个链接不执行任何操作,因为未定义hello
。很可能您在控制台中遇到错误:ReferenceError: hello is not defined
相关文章:
- 从函数JavaScript返回不可变数组/对象
- 将对象传递给函数.JavaScript
- 如何定义const函数javascript(语法糖)
- 新的日期函数javascript
- TypeError:this.getAttribute不是一个函数-javascript
- 从函数javascript发送变量
- 扩展自容器函数Javascript
- 从内部函数javascript内部分配外部函数的对象
- 使用函数JavaScript中的函数
- 在这里使用回调函数(JavaScript)有什么好处吗
- 来自函数 Javascript 的 NaN 返回值 ||函数执行顺序
- 将“e”传递给一个新函数 - javascript
- 调用函数中的一个函数——Javascript
- 传递的变量不适用于我的函数-Javascript
- 如何将类方法设置为等于多个函数?-Javascript
- 显示php中的函数javascript
- 如何使用php代码创建函数Javascript弹出框
- 未调用的外部函数-javascript
- 如何在类中运行函数.Javascript
- 关闭mouseover上的一个函数——Javascript,jQuery