Wed, 31 Dec 2014 13:27:57 +0100
Ignore runtime configuration files generated during quality assurance.
michael@0 | 1 | // Copyright 2009 the Sputnik authors. All rights reserved. |
michael@0 | 2 | // This code is governed by the BSD license found in the LICENSE file. |
michael@0 | 3 | |
michael@0 | 4 | /** |
michael@0 | 5 | * Changing the Reference of an Object While Maintaining Integrity |
michael@0 | 6 | * |
michael@0 | 7 | * @path ch08/8.7/S8.7_A3.js |
michael@0 | 8 | * @description Create a reference to the array, and redefine original array with new array |
michael@0 | 9 | */ |
michael@0 | 10 | |
michael@0 | 11 | ////////////////////////////////////////////////////////////////////////////// |
michael@0 | 12 | //CHECK# |
michael@0 | 13 | // Set items to an array (object) of strings |
michael@0 | 14 | var items = new Array( "one", "two", "three" ); |
michael@0 | 15 | // Set itemsRef to a reference to items |
michael@0 | 16 | // |
michael@0 | 17 | var itemsRef = items; |
michael@0 | 18 | // Set items to equal a new object |
michael@0 | 19 | // |
michael@0 | 20 | items = new Array( "new", "array" ); |
michael@0 | 21 | // items and itemsRef now point to different objects. |
michael@0 | 22 | // items points to new Array( "new", "array" ) |
michael@0 | 23 | // itemsRef points to new Array( "one", "two", "three" ) |
michael@0 | 24 | if( items == itemsRef ){ |
michael@0 | 25 | $ERROR('#1: var items = new Array( "one", "two", "three" ); var itemsRef = items; items = new Array( "new", "array" ); items != itemsRef'); |
michael@0 | 26 | }; |
michael@0 | 27 | // |
michael@0 | 28 | ////////////////////////////////////////////////////////////////////////////// |
michael@0 | 29 |