From: <rb...@us...> - 2018-05-14 13:40:37
|
Revision: 15260 http://sourceforge.net/p/htmlunit/code/15260 Author: rbri Date: 2018-05-14 13:40:24 +0000 (Mon, 14 May 2018) Log Message: ----------- fix typed array toString() Modified Paths: -------------- trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/javascript/host/arrays/ArrayBufferViewBase.java Modified: trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/javascript/host/arrays/ArrayBufferViewBase.java =================================================================== --- trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/javascript/host/arrays/ArrayBufferViewBase.java 2018-05-13 15:58:06 UTC (rev 15259) +++ trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/javascript/host/arrays/ArrayBufferViewBase.java 2018-05-14 13:40:24 UTC (rev 15260) @@ -203,20 +203,29 @@ } /** + * @return the string version + */ + @JsxFunction(functionName = "toString") + public String jsToString() { + final int arrayLength = getLength(); + final StringBuilder builder = new StringBuilder(); + if (arrayLength > 0) { + builder.append(ScriptRuntime.toString(get(0, this))); + } + for (int i = 1; i < arrayLength; i++) { + builder.append(','); + builder.append(ScriptRuntime.toString(get(i, this))); + } + return builder.toString(); + } + + /** * {@inheritDoc} */ @Override public Object getDefaultValue(final Class<?> hint) { if (String.class.equals(hint) || hint == null) { - final int length = getLength(); - final StringBuilder builder = new StringBuilder(); - for (int i = 0; i < length; i++) { - builder.append(get(i, this)); - if (i < length - 1) { - builder.append(','); - } - } - return builder.toString(); + return jsToString(); } return super.getDefaultValue(hint); } |