Files
rust_browser/tests/external/js262/fixtures/array-join.js
Zachary D. Rowitsch 66fbd69233
All checks were successful
ci / fast (linux) (push) Successful in 6m18s
Add JS array literals, computed member access, and array methods
Implement array literals ([1,2,3]), computed member access (obj[key]),
and seven array methods (push, pop, join, indexOf, slice, toString,
concat). Arrays use JsObject with an internal is_array flag and numeric
string keys plus a length property.

Key changes:
- Parser: LBracket/RBracket tokens, ArrayLit/ComputedMember/
  ComputedMemberAssign AST variants, bracket access in parse_call
- JsObject: refactored inner to JsObjectData with is_array flag,
  added new_array()/is_array()/remove(), array-aware Display/Debug
- Interpreter: eval_array_lit, eval_computed_member,
  eval_computed_member_assign (all #[inline(never)]), ComputedMember
  arms in eval_update/eval_compound_assign, dispatch_method_call
  refactor for shared dot/bracket call paths, eval_array_method
- JS262: promoted array-literal and computed-member-access to pass,
  added 5 new array method conformance tests (156 pass, 20 known_fail)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-21 20:42:01 -05:00

5 lines
93 B
JavaScript

var a = [1, 2, 3];
console.log(a.join());
console.log(a.join("-"));
console.log(a.join(""));