Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
class vs object
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Mobile Safari/537.36
Browser:
Chrome Mobile 119
Operating system:
Android
Device Platform:
Mobile
Date tested:
2 years ago
Test name
Executions per second
class
96540.4 Ops/sec
object
135953.2 Ops/sec
Tests:
class
const reportsData = Array(1000).map((_, index) => ({ user: { id: index, name: 'user' + index } })); class Report { constructor(report) { this.report = report; } reporterId() { this.report.user.id; } reporterName() { this.report.user.name; } } const classReports = reportsData.map(data => new Report(data)); classReports.forEach(report => console.log(report.reporterId, reporter.name))
object
const reportsData = Array(1000).map((_, index) => ({ user: { id: index, name: 'user' + index } })); const createReport = (report) => { return { ...report, get reporterId() { return this.user.id }, get reporterName() { return this.user.name }, } } const objectReports = reportsData.map(data => createReport(data)); objectReports.forEach(report => console.log(report.reporterId, reporter.name))