首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JS API文档[,arg ] vs,[ arg ]

JS API文档[,arg ] vs,[ arg ]
EN

Stack Overflow用户
提问于 2014-03-27 01:03:59
回答 1查看 61关注 0票数 1

在阅读各种API的文档时,我注意到有时函数定义会写成这样:

代码语言:javascript
运行
复制
jQuery.getJSON( url [, data ] [, success( data, textStatus, jqXHR ) ] )

有时就像这样:

代码语言:javascript
运行
复制
jQuery.getJSON( url, [data], [success( data, textStatus, jqXHR )] )

将逗号放在括号内和放在括号外是否有不同的含义?

EN

回答 1

Stack Overflow用户

发布于 2014-03-27 01:14:48

遵循utility argument syntax约定和nested arguments,就像在docopt中一样,对位置参数进行了一点传输:

数据jQuery.getJSON( url,

) getjson url --jQuery.getJSON=…

这意味着可以省略参数,而success回调可能排在第二位。$.getJSON(url)$.getJSON(url, {})$.getJSON(url, function(){})$.getJSON(url, {}, function(){})都是有效的。API可以确定第二个参数是否是data对象,或者第三个参数是否作为第二个参数传递。

数据成功(jQuery.getJSON,

,jQuery.getJSON( data,textStatus,jqXHR )) getjson url --data=…--success=函数

这意味着可以省略参数值,但success回调(如果明显)必须始终排在第三位。所有的$.getJSON(url, undefined, undefined)$.getJSON(url, {}, undefined)$.getJSON(url, undefined, function(){})$.getJSON(url, {}, function(){})都是有效的(当然,您可以省略尾随的undefined)。

记录可变参数的一种显式方法是使用嵌套和替代,另请参阅Documentation for optional parameters in JavaScript

然而,如果不知道描述开发人员所使用的文档样式的标准或参考,我们就永远不会知道他的实际意图。他可能也会认为他们是平等的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22668143

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档