javascript - 覆盖 JavaScript 数组的打印表示

标签 javascript arrays node.js

我正在尝试获取一个数组对象并更改其打印表示形式 - 仅更改该对象的打印表示形式,而不是程序中的所有数组。我希望设置 toString 属性能够完成这项工作,但事实并非如此:

var a = [1, 2, 3]

// Prints using the default representation
console.log(a)

// Try to override toString
a.toString = function() {
  return 'some new representation'
}

// Still uses the default representation
console.log(a)

我错过了什么?

最佳答案

var a = [1, 2, 3];

// Prints using the default representation
console.log(a);

// Try to override toString
a.toString = function() {
  return 'some new representation'
}

// append blank string to invoke toString function
console.log(""+a);

关于javascript - 覆盖 JavaScript 数组的打印表示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43542580/

相关文章:

javascript - 从JS/JQUERY channel 获取最新的YouTube(和抽搐)视频URL

ruby - Ruby 中的双方括号

javascript - expressJS 路由器规划 - 如何设置有效的路由器

node.js - 如何将 Alexa 请求处理程序引入另一个模块

javascript - 如何打破 async.js 每个循环?

javascript - 为什么 browser.get 方法没有转到指定的 url?

javascript - 如何使用exporter导出所有字段? ( react 管理)

javascript - 通过 $.inArray 在另一个数组中查找数组值?

java - 使用多维数组进行矩阵乘法 Java

java - 从方法调用 main 的数组的声明 (Java)