|
1 function testNewString() |
|
2 { |
|
3 var o = { toString: function() { return "string"; } }; |
|
4 var r = []; |
|
5 for (var i = 0; i < 5; i++) |
|
6 r.push(typeof new String(o)); |
|
7 for (var i = 0; i < 5; i++) |
|
8 r.push(typeof new String(3)); |
|
9 for (var i = 0; i < 5; i++) |
|
10 r.push(typeof new String(2.5)); |
|
11 for (var i = 0; i < 5; i++) |
|
12 r.push(typeof new String("string")); |
|
13 for (var i = 0; i < 5; i++) |
|
14 r.push(typeof new String(null)); |
|
15 for (var i = 0; i < 5; i++) |
|
16 r.push(typeof new String(true)); |
|
17 for (var i = 0; i < 5; i++) |
|
18 r.push(typeof new String(undefined)); |
|
19 return r.length === 35 && r.every(function(v) { return v === "object"; }); |
|
20 } |
|
21 assertEq(testNewString(), true); |