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)