Source code
Revision control
Copy as Markdown
Other Tools
//length, string, object
var expected = "3,6,4,3,6,4,3,6,4,3,6,4,";
var actual = '';
function f() {
var ss = [new String("abc"), new String("foobar"), new String("quux")];
for (var i = 0; i < 12; ++i) {
actual += ss[i%3].length + ',';
}
}
f();
assertEq(actual, expected);
function g(s) {
return new String(s).length;
}
assertEq(g("x"), 1); // Warm-up
assertEq(g("x"), 1); // Create IC
assertEq(g("x"), 1); // Test IC
function h(s) {
var x = new String(s);
for (var i = 0; i < 100; i++)
x[i] = i;
return x.length;
}
assertEq(h("x"), 1);
assertEq(h("x"), 1);
assertEq(h("x"), 1);