Files
scriptc/tests/corpus/3051-array-join-default.ts
Chris Tate 1f23c28bb0 Expand static Array flat, splice, and join lowering (#460)
* Expand static Array flattening, splice insertion, and join coercion

* Refresh Array diagnostic and TypeScript 7 baselines
2026-09-26 08:41:06 -05:00

18 lines
770 B
TypeScript

console.log([1, 2, 3].join(), ["a", "b"].join(), [true, false].join());
console.log([1, 2].join(undefined), [1, 2].join(void 0));
console.log([1, 2].join("|"), [1].join(), ([] as number[]).join());
let calls = 0;
function missing(): undefined { calls++; return undefined; }
console.log([5, 6].join(missing()), calls);
// @ts-ignore JavaScript accepts a numeric separator.
console.log([1, 2, 3].join(0));
// @ts-ignore JavaScript accepts a boolean separator.
console.log([1, 2].join(false));
// @ts-ignore JavaScript accepts a null separator.
console.log([1, 2].join(null));
function optionalSeparator(usePipe: boolean): string | undefined { return usePipe ? "|" : undefined; }
console.log([1, 2].join(optionalSeparator(true)), [1, 2].join(optionalSeparator(false)));