| <p>This page tests that string addition prefers valueOf() over toString() for conversion. If the test passes, you'll see a PASS message below.</p> |
| |
| <pre id="console"></pre> |
| |
| <script> |
| function log(s) |
| { |
| document.getElementById("console").appendChild(document.createTextNode(s + "\n")); |
| } |
| |
| function shouldBe(a, aDescription, b) |
| { |
| if (a === b) |
| log("PASS: " + aDescription + " should be " + b + " and is."); |
| else |
| log("FAIL: " + aDescription + " should be " + b + " but instead is " + a + "."); |
| } |
| |
| if (this.testRunner) |
| testRunner.dumpAsText(); |
| |
| var valueOfIsZero = { |
| valueOf: function valueOf() { return 0; }, |
| toString: function toString() { return 1; } |
| }; |
| |
| shouldBe('1' + valueOfIsZero, "'1' + valueOfIsZero", "10"); |
| |
| </script> |