JSFiddle - React, Tailwind, and code Playground

by Jon Nyman

HTML

<script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/2.4.1/lodash.js"></script>

JavaScript

function Test(){
    this.name = 'George'
    this.id = {nested: 0}
}

Test.prototype.getName = function(){return this.name}

var george = new Test()
console.log(george)
console.log(george instanceof Test)

var sue = _.assign(george, {name: 'Sue'})
console.log(sue)
console.log(sue instanceof Test)
console.log(george)

var fred = _.assign({}, george, {name: 'Fred'})
console.log(fred)
console.log(fred instanceof Test)

var fred_ = fred
fred_.__proto__ = george.__proto__
console.log(fred_)
console.log(fred_ instanceof Test)
console.log(fred_.getName())

console.log(george.id.nested)
fred_.id.nested = 1
console.log(george.id.nested)
var fred$ = _.assign(fred_, {id : {nested: 2}})
console.log(george.id.nested)
console.log(fred$.id.nested)