src code

instance method SpahQL#detach

SpahQL#detach() → SpahQL

Creates and returns the first item from this set as a new SpahQL database, using a deep clone of the item’s value.

For instance:

var myDb = SpahQL.db({foo: {bar: “baz”}}); var foo = myDb.select(“/foo”); foo.path() // -> “/foo” foo.value() //-> {bar: “baz”}; var fooClone = foo.detach(); fooClone.path() //-> ”/” fooClone.value() //-> {bar: “baz”} fooClone.value() == foo.value() //-> false fooClone.set(“bar”, “baz-changed”) fooClone.select(“/bar”).value() //-> “baz-changed” foo.select(“/bar”).value() //-> “baz”