| // Copyright 2016 the V8 project authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| function getLength(a) { |
| return a.length; |
| } |
| |
| function getByteLength(a) { |
| return a.byteLength; |
| } |
| |
| function getByteOffset(a) { |
| return a.byteOffset; |
| } |
| |
| var a = new Uint8Array([1, 2, 3]); |
| getLength(a); |
| getLength(a); |
| |
| Object.defineProperty(a.__proto__, 'length', {value: 42}); |
| |
| assertEquals(42, getLength(a)); |
| assertEquals(42, a.length); |
| |
| getByteLength(a); |
| getByteLength(a); |
| |
| Object.defineProperty(a.__proto__, 'byteLength', {value: 42}); |
| |
| assertEquals(42, getByteLength(a)); |
| assertEquals(42, a.byteLength); |
| |
| getByteOffset(a); |
| getByteOffset(a); |
| |
| Object.defineProperty(a.__proto__, 'byteOffset', {value: 42}); |
| |
| assertEquals(42, getByteOffset(a)); |
| assertEquals(42, a.byteOffset); |