Как мне преобразовать объект в пользовательскую строку в JavaScript? - PullRequest
4 голосов
/ 29 октября 2010

Я хочу перегрузить преобразование объекта в строку, чтобы в следующем примере выводилась строка «TEST» вместо «[object Object]».Как мне это сделать?

function TestObj()
{
    this.sValue = "TEST";
}
function Test()
{
    var x = new TestObj();
    document.write(x);
}

Ответы [ 2 ]

12 голосов
/ 29 октября 2010

Вам необходимо переопределить функцию toString (), которая есть у всех объектов. Попробуйте

TestObj.prototype.toString = function() {return this.sValue };
7 голосов
/ 29 октября 2010

Вы должны перегрузить метод toString ...

TestObj.prototype.toString = function(){return this.sValue;}

Пример на http://jsfiddle.net/Ktp9E/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...