Boolean constructor vs double negotiation trick in javascript
Date tested:
5 years ago
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36
Test name
Executions per second
Boolean
732950.8 Ops/sec
Double negation trick
2590571.8 Ops/sec
Benchmark definition (click to collapse):
Script Preparation code:
var bFalse = false; var sEmpty = ''; var sFilled = 'Foo'; var nZero = 0; var nOne = 1;
Tests:
Boolean
Boolean(bFalse) Boolean(sEmpty) Boolean(sFilled) Boolean(nZero) Boolean(nOne)
Double negation trick
!!bFalse !!sEmpty !!sFilled !!nZero !!nOne
Open this result on MeasureThat.net