Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Classes memory
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36
Browser:
Chrome 123
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
2 years ago
Test name
Executions per second
Arrows in classes
284371.4 Ops/sec
Bind in classes
412080.5 Ops/sec
Bind in classes prototype
401019.3 Ops/sec
Mixed in classes
355567.3 Ops/sec
Tests:
Arrows in classes
class A { hi = () => { return 'Hi' + '!'; } bye = () => { return 'Bye' + '!'; } message = () => { return this.hi() + this.bye(); } } const a = new A(); const message = a.message; message();
Bind in classes
class A { constructor() { this.message = this.message.bind(this); } hi() { return 'Hi' + '!'; } bye() { return 'Bye' + '!'; } message() { return this.hi() + this.bye(); } } const a = new A(); const message = a.message; message();
Bind in classes prototype
class A { constructor() { this.message = A.prototype.message.bind(this); } hi() { return 'Hi' + '!'; } bye() { return 'Bye' + '!'; } message() { return this.hi() + this.bye(); } } const a = new A(); const message = a.message; message();
Mixed in classes
class A { hi() { return 'Hi' + '!'; } bye() { return 'Bye' + '!'; } message = () => { return this.hi() + this.bye(); } } const a = new A(); const message = a.message; message();