関数this
内では使えないようです。setInerval
何故ですか?エレガントなソリューションとは何ですか?
<html>
<script>
var something = function(tMessage){
this.message = tMessage;
};
something.prototype = {
start : function(counter){
document.getElementById('result').innerHTML += this.message + "+++<br />";
var looper = setInterval(
function(){
// This is printing "undefined"
document.getElementById('result').innerHTML += this.message + "<br />";
if(!counter--)
clearInterval(looper);
},
20
);
}
};
window.onload = function(){
var e = new something("hi");
e.start(2);
}
</script>
<body>
<div id="result"></div>
</body>
</html>
編集
答えてくれてありがとう!しかし、引数の送信と設定および追加の変数の違いを誰かが説明できますか?メモリの問題はありますか?