Run details:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36
Chrome 96
Mac OS X 10.15.7
Desktop
3 years ago
Test name Executions per second
Destructuring 745854.3 Ops/sec
Assigment 534902.8 Ops/sec
Assignment (alternative) 895200.9 Ops/sec
Tests:
  • Destructuring

    x
     
    var list = [];
    for (let i = 0; i < 10; ++i) {
      const type = i % 2 === 1 ? 'cases' : 'non-case';
      const newObj = {
        test: 'destructoring vs assigment',
        ...(type === 'cases' && {name})
      }
      list.push(newObj);
    }
  • Assigment

     
    var list = [];
    for (let i = 0; i < 10; ++i) {
      const type = i % 2 === 1 ? 'cases' : 'non-case';
      const newObj = {
        test: 'destructoring vs assigment',
        name: type === 'cases' ? name: undefined,
      }
      list.push(newObj);
    }
  • Assignment (alternative)

     
    var list = [];
    for (let i = 0; i < 10; ++i) {
      const type = i % 2 === 1 ? 'cases' : 'non-case';
      const newObj = {
        test: 'destructoring vs assigment',
      }
      if (type === 'cases')
        newObj.name = name;
      list.push(newObj);
    }