javascript - 我只是想知道是否有人可以澄清为什么在 JavaScript 中的函数回调期间使用方括号?
问题描述
所以,我目前正在通过 JavaScript 工作,并且经常发现自己收到关于信息的“信息过载”块......
我希望有人能为我澄清为什么,如果我编写下面的函数,在它的回调中我需要在函数回调括号内使用方括号?
function printReverse(arr){
for(var i = arr.length - 1; i >= 0; i--){
console.log(arr[i]);
}
}
函数回调:
printReverse([3,4,5,6])
我想描述的方式是:使用方括号,以便将其中的数字定义为数组变量参数。由于不知道我们可能需要多少而未定义它们,因此它是根据用户输入定义的。
但是为什么是方括号呢?为什么只使用括号时会出错?这与 JavaScript 将方括号内的变量元素识别为“数组值”有关吗?
请随意调整任何逻辑等。我只是想把我的笔记分解成文字基础!也欢迎任何额外的阅读等。
谢谢你。
解决方案
回调是当您将函数作为参数传递时(然后由您传递给它的函数调用)。这里没有回调。
在这种情况下,方括号表示一个数组。
数组是传递给arr
参数的值。
没有方括号,您就没有数组,而是传递了 4 个单独的参数。该代码尝试将第一个视为数组,但它是一个数字,因此会出错。
推荐阅读
- java - spring-data-neo4j 中的深度注释不起作用吗?
- python - 是否可以在 python tkinter 中创建一个类似旋转框的小部件
- cakephp - CakePHP 版本 4 如果不存在则创建文件夹
- django - 如何使用日志记录模块记录 django-kronos 任务?
- html - 为什么margin-bottom被折叠?
- javascript - 如何在服务器端 PHP 上叠加两个或多个图像?
- arduino - SMS 通知不适用于带有 GSM 模块的 Arduino Nano
- r - 过滤ggplot2中的值?
- android - 大网格视图性能的android最佳实践
- javascript - 使用 RXJS 制作卡片组 - Redux Observable