【发布时间】:2010-12-17 05:57:24
【问题描述】:
我正在尝试创建一个函数数组,以便可以根据索引调用一个函数。 设置功能不起作用。 setF1 和 setF2 函数可以。 使事情以这种方式工作的设计决策是什么?
您可以在 jrootham.tjddev.net/test/test.html 找到测试页面
我似乎无法在此处粘贴测试代码。
<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript">
var thing =
{
f1 : function() {alert(1);},
f2 : function() {alert(2);},
setF1 : function() {this.call = this.f1;},
setF2 : function() {this.call = this.f2;},
list : [this.f1, this.f2],
set: function(index){this.call=this.list[index];},
call : this.f1
}
</script>
</head>
<body>
<button type="button" onClick="thing.set(0)">Set 0</button>
<button type="button" onClick="thing.set(1)">Set 1</button>
<button type="button" onClick="thing.setF1()">Set F1</button>
<button type="button" onClick="thing.setF2()">Set F2</button>
<button type="button" onClick="thing.call()">Call</button>
</body>
</html>
【问题讨论】:
-
{}创建一个object;[]创建一个array。两者之间存在显着差异。
标签: javascript arrays function