我最近尝试在javascript中使用map的实现来创建一堆项目,然后将它们应用于对象添加方法.
首先是沼泽标准的地图实现.
var map = function (fn, a)
{
for (i = 0; i < a.length; i++)
{
a[i] = fn(a[i]);
}
}
Run Code Online (Sandbox Code Playgroud)
建立.
var translateMenu = new Menu;
var languages = [ ['Chinese' , 'zh-CN']
, ['German' , 'de']
, ['French' , 'fr']
, ['Portugese' , 'pt']
, ['Hindi' , 'hi']
];
Run Code Online (Sandbox Code Playgroud)
我的功能......(不是匿名的,因为它在将translateMenu添加到mainMenu时会被使用.)
var langItem = function (language, subMenu)
{
return new MenuItem(language[0], 'http://translate.google.com/translate?u=www.example.com&hl=en&ie=UTF-8&tl=en&sl=' + language[1] , "" , subMenu);
}
map ( langItem , languages );
Run Code Online (Sandbox Code Playgroud)
这一切都运行良好,我现在有一个MenuItems阵列扔掉.
尝试调用 …