인덱스에 따라 함수를 호출 할 수 있도록 함수 배열을 만들려고합니다. 설정 기능이 작동하지 않습니다. setF1 및 setF2 함수가 수행합니다. 이런 식으로 작업하게 한 디자인 결정은 무엇입니까?배열에서 javascript 함수를 사용하면 왜 작동하지 않습니까?
당신은 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'를 만듭니다. 이 둘 사이에는 상당한 차이가 있습니다. – zzzzBov