我正在调试别人写的一些
代码(使用Mootools作为基础库),我遇到了这个
函数:
[note,$H(options.text).getKeys()].flatten().each(function(option){
// bunch of stuff happening
});
我以前从未见过这种语法,括号和$H表示法(例如[note,$H(options.text).getKeys()]).任何人都可以解释它的工作原理或指向我的参考吗?
谢谢!
这基本上将两个数组聚合在一起.举个例子,这个
代码:
var a = [1,2,3];
var b = [4,5,6];
var c = [a,b].flatten();
alert(c);
阵列[1,3]和[4,6]被组合(或“扁平化”)成单个阵列1,3,4,6.
在你的代码中:
[note,$H(options.text).getKeys()].flatten()
注意(可能是另一个数组)和getKeys()返回的任何内容都被展平为一个数组.然后,跨每个元素执行功能.
更新:
$H function是Mootools中的实用程序功能,它是Hash()的快捷方式.