src/jdk/nashorn/internal/objects/NativeArray.java

Print this page

        

*** 335,346 **** * @param self self reference * @return string representation of array */ @Function(attributes = Attribute.NOT_ENUMERABLE) public static Object toString(final Object self) { ! if (self instanceof ScriptObject) { ! final ScriptObject sobj = (ScriptObject) self; try { final Object join = JOIN.getGetter().invokeExact(sobj); if (join instanceof ScriptFunction) { return JOIN.getInvoker().invokeExact(join, sobj); } --- 335,347 ---- * @param self self reference * @return string representation of array */ @Function(attributes = Attribute.NOT_ENUMERABLE) public static Object toString(final Object self) { ! final Object obj = Global.toObject(self); ! if (obj instanceof ScriptObject) { ! final ScriptObject sobj = (ScriptObject)obj; try { final Object join = JOIN.getGetter().invokeExact(sobj); if (join instanceof ScriptFunction) { return JOIN.getInvoker().invokeExact(join, sobj); }
*** 571,583 **** * @param separator element separator * @return string representation after join */ @Function(attributes = Attribute.NOT_ENUMERABLE) public static Object join(final Object self, final Object separator) { - final String sep = separator == ScriptRuntime.UNDEFINED ? "," : JSType.toString(separator); final StringBuilder sb = new StringBuilder(); final Iterator<Object> iter = arrayLikeIterator(self, true); while (iter.hasNext()) { final Object obj = iter.next(); if (obj != null && obj != ScriptRuntime.UNDEFINED) { --- 572,584 ---- * @param separator element separator * @return string representation after join */ @Function(attributes = Attribute.NOT_ENUMERABLE) public static Object join(final Object self, final Object separator) { final StringBuilder sb = new StringBuilder(); final Iterator<Object> iter = arrayLikeIterator(self, true); + final String sep = separator == ScriptRuntime.UNDEFINED ? "," : JSType.toString(separator); while (iter.hasNext()) { final Object obj = iter.next(); if (obj != null && obj != ScriptRuntime.UNDEFINED) {