为什么我会在true
这里放置括号....这不是一个数组吗?它会做些什么吗?
$e.trigger("onlyShowIfChange", [true]);
答案 0 :(得分:5)
是的,这会产生一个包含一个元素的数组 - true
。
它没有做任何其他事情。
有时候,方法调用可能需要一个数组,如果你还没有数组,你可以方便地用[]
包装你的参数。
常见的情况是Function.apply method。第二个参数是 argArray :
var func = function(a, b) {
return a + b;
};
func.apply(null, [1, 3]); // returns 4
答案 1 :(得分:4)
.trigger(eventType,extraParameters)
eventType:包含a的字符串 JavaScript事件类型,例如单击 或提交。
extraParameters:一个数组 要传递的其他参数 事件处理程序。
第二个参数必须是数组
$e.trigger("onlyShowIfChange", [true, false]);
$e.bind("onlyShowIfChange", function(ev, trueBool, falseBool) {
...
});
这意味着如果要将额外参数传递给事件绑定函数,则必须传入一个参数数组作为第二个参数触发。
答案 2 :(得分:1)
它创建一个以true
为唯一值的数组,但可能您在某些文档中找到了这种语法,在这种情况下意味着true
是可选的。