在单个数组对象上覆盖toString()Javascript

时间:2011-10-26 11:03:42

标签: javascript overloading jslint

我有以下内容:

var version = [0,3,0];

// Override the version toString method.
version.__proto__.toString = function() {
    return this.join('.');
};

以下是哪个

version.toString => '0.3.0'

JSlint认为__proto__是保留名称 - 这是正确的。

我认为我的输入不正确。

我不想

Array.prototype.toString

因为它会覆盖要替换的所有数组,使用。?

1 个答案:

答案 0 :(得分:15)

直接在数组上设置方法:

var version = [0,3,0];

// Override the version toString method.
version.toString = function() {
    return this.join('.');
};