michael@0: // Copyright 2009 the Sputnik authors. All rights reserved. michael@0: // This code is governed by the BSD license found in the LICENSE file. michael@0: michael@0: /** michael@0: * Changing the Reference of an Object While Maintaining Integrity michael@0: * michael@0: * @path ch08/8.7/S8.7_A3.js michael@0: * @description Create a reference to the array, and redefine original array with new array michael@0: */ michael@0: michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: //CHECK# michael@0: // Set items to an array (object) of strings michael@0: var items = new Array( "one", "two", "three" ); michael@0: // Set itemsRef to a reference to items michael@0: // michael@0: var itemsRef = items; michael@0: // Set items to equal a new object michael@0: // michael@0: items = new Array( "new", "array" ); michael@0: // items and itemsRef now point to different objects. michael@0: // items points to new Array( "new", "array" ) michael@0: // itemsRef points to new Array( "one", "two", "three" ) michael@0: if( items == itemsRef ){ michael@0: $ERROR('#1: var items = new Array( "one", "two", "three" ); var itemsRef = items; items = new Array( "new", "array" ); items != itemsRef'); michael@0: }; michael@0: // michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: