Test name | Executions per second |
---|---|
class | 49702.9 Ops/sec |
function | 84216.2 Ops/sec |
class A {
a() {
return { a: 1 };
}
a1() {
return { a: 1 };
}
a2() {
return { a: 1 };
}
a3() {
return { a: 1 };
}
a4() {
return { a: 1 };
}
a5() {
return { a: 1 };
}
}
class B {
constructor(a) {
this.a = new A();
}
a() {
return this.a.a();
}
a1() {
return this.a.a1();
}
a2() {
return this.a.a2();
}
}
class C {
constructor(a) {
this.a = new A();
}
a3() {
return this.a.a3();
}
a4() {
return this.a.a4();
}
a5() {
return this.a.a5();
}
}
// var a = new A();
var b = new B();
var c = new C();
console.log('class', b.a.a === c.a.a);
ar = () => ({
a() {
return { a: 1 };
}
})
ar1 = () => ({
a1() {
return { a: 1 };
}
})
ar2 = () => ({
a2() {
return { a: 1 };
}
})
ar3 = () => ({
a3() {
return { a: 1 };
}
})
ar4 = () => ({
a4() {
return { a: 1 };
}
})
ar5 = () => ({
a5() {
return { a: 1 };
}
})
function B1() {
return Object.assign({}, ar(), ar1(), ar2());
}
function C1() {
return Object.assign({}, ar(), ar4(), ar5());
}
var b = B1();
var c = C1();
console.log('function', b.a === c.a);