问题描述
因此,我目前正在通过JavaScript进行工作,经常发现自己遇到了有关信息的“信息超载”块...
我希望有人能为我澄清一下,如果我编写下面的函数,为什么在其回调时需要在函数回调括号内添加方括号?
function printReverse(arr){
for(var i = arr.length - 1; i >= 0; i--){
console.log(arr[i]);
}
}
函数回调:
printReverse([3,4,5,6])
我要描述的方式是:使用方括号,以便将其中的数字定义为数组变量参数。由于由于不知道我们可能需要多少而未进行定义,因此根据用户输入进行定义。
但是为什么要用方括号?为什么只使用括号会出现错误?这与JavaScript将方括号内的变量元素识别为“数组值”有关吗?
请随时调整任何逻辑等。我只想将我的笔记分解为字面基础!也欢迎您阅读其他任何内容。
谢谢。
解决方法
回调是当您传递 function 作为参数时(然后由传递给它的函数调用)。这里没有回调。
在此情况下,方括号表示数组。
该数组是传递给=========================================================================
JBoss Bootstrap Environment
JBOSS_HOME: /opt/jboss/wildfly
JAVA: /usr/lib/jvm/java/bin/java
DB_CONNECTION_URL: jdbc:mysql://127.0.0.1:13306/dbt?serverTimezone=UTC JAVA_OPTS: -server -Xms64m -Xmx512m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true --add-exports=java.base/sun.nio.ch=ALL-UNNAMED --add-exports=jdk.unsupported/sun.misc=ALL-UNNAMED --add-exports=jdk.unsupported/sun.reflect=ALL-UNNAMED
=========================================================================
11:00:34,362 INFO [org.jboss.modules] (main) JBoss Modules version 1.10.1.Final
11:00:34,854 INFO [org.jboss.msc] (main) JBoss MSC version 1.4.11.Final
11:00:34,863 INFO [org.jboss.threads] (main) JBoss Threads version 2.3.3.Final
[...]
参数的值。
没有方括号,您没有数组,而是传递了4个独立的参数。该代码尝试将第一个视为数组,但是它是一个数字,因此会出错。