Run details:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36
Chrome 86
Windows
Desktop
4 years ago
Test name Executions per second
lodash clone 473738.1 Ops/sec
object.assign 1383113.1 Ops/sec
for 352297.3 Ops/sec
spread 7071207.0 Ops/sec
HTML Preparation code:
x
 
1
2
<script src='https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.5/lodash.min.js'></script>
Script Preparation code:
 
var obj =  {
        "tid": 1,
        "cid": 0,
        "uid": 0,
        "mainPid": 0,
        "postcount": 0,
        "viewcount": 0,
        "postercount": 0,
        "deleted": 0,
        "locked": 0,
        "pinned": 0,
        "timestamp": 0,
        "upvotes": 0,
        "downvotes": 0,
        "lastposttime": 0,
        "deleterUid": 0,
        "timestampISO": "",
        "lastposttimeISO": "",
        "votes": 0,
        "teaserPid": null
    };
Tests:
  • lodash clone

     
    var c = _.clone(obj);
  • object.assign

     
    var c = Object.assign({}, obj);
  • for

     
    var copy = {};
    for (const k in obj) {
        copy[k] = obj[k];
    }
  • spread

     
    var copy =  { ...obj };