JavaScript参数语法类似{video: true}
JavaScript argument syntax like {video: true}
从这篇文章中,我发现了一种将参数传递为navigator.getUserMedia({video: true, audio: true}, ...)
的奇怪语法。作为{video: true, audio: true}
调用的传递参数的语法是什么?
虽然这个语法navigator.getUserMedia("audio, video", ...)
也工作,我们应该更喜欢哪一个?
我在StackOverflow上找到了这个问题,但接受的答案说它是一个ActionScript语法
语法{...}
正在创建对象文字。在本例中,它们恰好将对象字面值构造为形参。
这类似于执行一个函数并将它的返回值作为参数传递:
navigator.getUserMedia(foo(), ...)
var foo = function () {
var someObj = {video: true, audio: true};
return someObj;
};
传递对象文字的好处是,它允许您将多个逻辑相关的参数作为一个形式参数一起传递。这允许动态参数,这也可以通过使用arguments
对象来实现,尽管大多数人更喜欢传递对象,因为它更容易理解和维护。
This:
{video: true, audio: true}
是一个JavaScript对象字面值。其中一个主要用途是将选项列表传递给函数。
至于使用哪一个选项,我更喜欢对象字面语法,因为它更直观:您可以看到它们都将被设置为true。
相关文章:
- 如何在angularJS中编辑时,如果DB中的值为true,则设置复选框,如果值为false,则取消选中复选框
- AngularJS-使用'true'属性
- JavaScript-切换“;全部检查”;复选框true/false
- location.reload(true)崩溃浏览器选项卡
- 指令的模板必须只有一个根元素:With restrict E&替换true
- JavaScript:只有当数组中的所有项都为true时才执行函数
- 对于loop.if-仅在经过所有间隔后返回true
- if(foo!==null)的计算结果为true,即使foo为null
- ngIf的计算结果始终为true
- 使用video.js在视频中进行章节导航
- 如果函数返回True,则显示Javascript按钮
- (false==false==true)怎么可能是真的
- Javascript If else 只返回 TRUE 或只返回 FALSE
- sails.js beforeCreate方法只接收required设置为true的模型属性
- 在$state.go之后执行$window.location.reload(true)
- 尝试简化检查对象键是否为true并将其推送到另一个对象
- 过滤器返回true或false
- 什么是'true'和'false'和'null'
- 如何使用选项useCSS set true为bxSlider加载onSlideAfter()事件
- JavaScript参数语法类似{video: true}