Closed
Bug 1115817
Opened 10 years ago
Closed 10 years ago
Implement %TypedArray%.prototype.join
Categories
(Core :: JavaScript: Standard Library, defect)
Core
JavaScript: Standard Library
Tracking
()
RESOLVED
FIXED
mozilla37
People
(Reporter: 446240525, Assigned: 446240525)
References
Details
(Keywords: dev-doc-complete, Whiteboard: [DocArea=JS])
Attachments
(1 file, 1 obsolete file)
6.83 KB,
patch
|
446240525
:
review+
|
Details | Diff | Splinter Review |
No description provided.
Attachment #8541847 -
Flags: review?(evilpies)
Comment 2•10 years ago
|
||
Comment on attachment 8541847 [details] [diff] [review]
bug-1115817-v1.patch
Review of attachment 8541847 [details] [diff] [review]:
-----------------------------------------------------------------
Great work as always.
::: js/src/builtin/TypedArray.js
@@ +186,5 @@
> + // Step 9.
> + var element0 = O[0];
> +
> + // Steps 10-11.
> + var R = (element0 === null || element0 === undefined) ? "" : ToString(element0);
element0 can't really be null or undefined, right? Because after step 8 we have at least one element, which can only be a number.
::: js/src/tests/ecma_6/TypedArray/join.js
@@ +19,5 @@
> + assertEq(new constructor([1, 2, 3]).join(.1), "10.120.13");
> + assertEq(new constructor([1, 2, 3]).join({toString(){return "foo"}}), "1foo2foo3");
> + assertEq(new constructor().join(), "");
> + assertEq(new constructor().join("*"), "");
> + assertEq(new constructor(3).join(), "0,0,0");
Please add one test for the "special" len == 1 case.
Attachment #8541847 -
Flags: review?(evilpies) → review+
Comment 3•10 years ago
|
||
Comment on attachment 8541847 [details] [diff] [review]
bug-1115817-v1.patch
Review of attachment 8541847 [details] [diff] [review]:
-----------------------------------------------------------------
::: js/src/builtin/TypedArray.js
@@ +189,5 @@
> + // Steps 10-11.
> + var R = (element0 === null || element0 === undefined) ? "" : ToString(element0);
> +
> + // Steps 12-13.
> + // Omit the 'if' clause in step 13.c, since typed arrays can not have undefined or null element.
Oh I think this should be element*s*
Comment 4•10 years ago
|
||
Comment on attachment 8541847 [details] [diff] [review]
bug-1115817-v1.patch
Review of attachment 8541847 [details] [diff] [review]:
-----------------------------------------------------------------
::: js/src/builtin/TypedArray.js
@@ +191,5 @@
> +
> + // Steps 12-13.
> + // Omit the 'if' clause in step 13.c, since typed arrays can not have undefined or null element.
> + for (var k = 1; k < len; k++) {
> + R = R + sep + ToString(O[k]);
While this is correct, I would prefer if you could separate this into the steps as well.
::: js/src/tests/ecma_6/TypedArray/join.js
@@ +12,5 @@
> +
> +for (var constructor of constructors) {
> + assertEq(constructor.prototype.join.length, 1);
> +
> + assertEq(new constructor([1, 2, 3]).join(), "1,2,3");
On test with join(undefined)
Attachment #8541847 -
Attachment is obsolete: true
Attachment #8542390 -
Flags: review+
Keywords: checkin-needed
Comment 7•10 years ago
|
||
Keywords: checkin-needed
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla37
Comment 9•10 years ago
|
||
https://developer.mozilla.org/en-US/Firefox/Releases/37#JavaScript
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/join
Keywords: dev-doc-needed → dev-doc-complete
You need to log in
before you can comment on or make changes to this bug.
Description
•