我在哪里可以找到有关 Javascript 的特定参数语法的更多信息? (里面的例子)

Where can I find more information a specific parameter syntax for Javascript? (example inside)

我在查看 node.js 文档时发现了方法的文档:

http.request(options[, callback])

我很好奇为什么参数(options[ callback])会这样表示。我有点理解它是如何工作的,它意味着什么。我相信它大致类似于:

http.request = function(options=undefined, callback) { 
    // code using default values for options 
    };

我知道它远不止于此,但我主要对参数表示感到好奇。我无法在任何 MDN Javascript 文档中找到任何信息。

它是 shorthand 表示 ECMA6 默认参数和解构的方式吗?

方括号用于可选参数,因此此方法需要一个 "options" 个参数,并且可能有第二个 "callback" 个参数。这是描述方法接口的标准方式。

这里是 link 的 NodeJS 文档,你会在里面找到你正在使用的方法 NodeJs Documentation 选项是一个对象,您可以在其中配置不同的 options/settings,例如协议、主机和主机名。这将是该参数的示例:

{
   protocol: value,
   host: value,
}

而参数callback,是http.request结束后要执行的函数,node JS中的所有方法都是异步非阻塞的,第一个参数会报错(如果有是任何)和在其他参数中响应

在Javascript中,根据调用函数时给定的参数,有一些参数是可选的。通常,您描述的语法与此类似:

function someStuff(aParam, optionalParam){
   console.log("using the aParamter = " + aParam + ".The optional param it's " + (optionalParam? ("present with value = " + optionalParam ) : "notPresent" ) )
}

someStuff(1, 2);
someStuff(1);

恕我直言,这没有标准,另一种选择:

function importantThingToDo(theMostImportantParam){
 var options = arguments[1] || {/* a default optional params*/ 
                                         option : 1
                                      };
 console.log("This callback was called with the options: " options");

}

importantThingToDo("play guitar");
importantThingToDo("play bass", {option: 2});