Ho scritto un quick jsfiddle here, dove ho passato un piccolo oggetto json a una nuova variabile e modificato i dati dalla variabile originale (non la nuova variabile), ma anche i dati della nuova variabile vengono aggiornati. Questo deve significare che l'oggetto JSON è stato passato per riferimento, giusto? ciCome copiare l'oggetto JavaScript nella nuova variabile NON come riferimento?
var json_original = {one:'one', two:'two'}
var json_new = json_original;
console.log(json_original); //one, two
console.log(json_new); //one, two
json_original.one = 'two';
json_original.two = 'one';
console.log(json_original); //two, one
console.log(json_new); //two, one
è un modo per fare una copia completa di un oggetto JSON in modo che modificando la variabile originale non modificherà la nuova variabile:
Ecco il mio codice veloce?
Non c'è JSON lì. Si prega di non confondere gli oggetti JavaScript con JSON. – Quentin
@Quentin, grazie, leggerò la differenza tra gli oggetti javacript e json (ref: http://stackoverflow.com/questions/6489783/whats-the-difference-between-javascript-object-and-json-object – Prusprus
Non pensare che sia un duplicato, la risposta non è stata trovata sull'altro thread. – Prusprus