| // Copyright (c) 2012 Ecma International. All rights reserved. |
| // This code is governed by the BSD license found in the LICENSE file. |
| |
| /*--- |
| esid: sec-array.prototype.indexof |
| es5id: 15.4.4.14-10-1 |
| description: > |
| Array.prototype.indexOf returns -1 for elements not present in |
| array |
| ---*/ |
| |
| var a = new Array(); |
| a[100] = 1; |
| a[99999] = ""; |
| a[10] = new Object(); |
| a[5555] = 5.5; |
| a[123456] = "str"; |
| a[5] = 1E+309; |
| |
| assert.sameValue(a.indexOf(1), 100, 'a.indexOf(1)'); |
| assert.sameValue(a.indexOf(""), 99999, 'a.indexOf("")'); |
| assert.sameValue(a.indexOf("str"), 123456, 'a.indexOf("str")'); |
| assert.sameValue(a.indexOf(1E+309), 5, 'a.indexOf(1E+309)'); //Infinity |
| assert.sameValue(a.indexOf(5.5), 5555, 'a.indexOf(5.5)'); |
| |
| assert.sameValue(a.indexOf(true), -1, 'a.indexOf(true)'); |
| assert.sameValue(a.indexOf(5), -1, 'a.indexOf(5)'); |
| assert.sameValue(a.indexOf("str1"), -1, 'a.indexOf("str1")'); |
| assert.sameValue(a.indexOf(null), -1, 'a.indexOf(null)'); |
| assert.sameValue(a.indexOf(new Object()), -1, 'a.indexOf(new Object())'); |