次のコードがあります。
var arr = [{Name: "foo", action: function(){ alert("foo")}},
{Name: "bar", action: function(){ alert("bar")}}
]
var arr2 = {};
for(var i =0; i< arr.length; i++)
{
var bla = arr[i];
arr2[bla.Name] = function(){ bla.action() };
}
arr2.foo();
arr2.bar();
「バー」を 2 回警告します。代わりに私がするとき
arr2[bla.Name] = bla.action;
それは機能します。
最初のケースで機能させる方法(関数に他のものを追加する必要があります)
ありがとう !