Skip to content

Instantly share code, notes, and snippets.

@mitsuru793
Last active December 2, 2015 06:05
Show Gist options
  • Save mitsuru793/bbb3f0050ab039fe0b73 to your computer and use it in GitHub Desktop.
Save mitsuru793/bbb3f0050ab039fe0b73 to your computer and use it in GitHub Desktop.
JavaScriptで、メソッドへの参照を変数にキャッシュしてみる
function Person(name) {
this.name = name;
}
Person.prototype.getHelloString = function(toName, greet) {
this.name + ":" + toName + "さん!" + greet;
}
tanaka = new Person("田中");
// chromeで何度も実行すると、どれもが1番速くなる時があれば遅くなる時もあります。
repeat = 100000;
console.time('nest:0');
for (var i = 0; i < repeat; i++) {
tanaka.getHelloString("新人", "よろしくね");
}
console.timeEnd('nest:0'); //
console.time('nest:1');
nest1 = tanaka.getHelloString
for (var i = 0; i < repeat; i++) {
nest1("新人", "よろしくね");
}
console.timeEnd('nest:1');
console.time('nest:2');
nest2 = nest1
for (var i = 0; i < repeat; i++) {
nest2("新人", "よろしくね");
}
console.timeEnd('nest:2');
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment