Возможно ли создать объект, который возвращает человеческую удобочитаемую строку?js: Объект, возвращающий считываемую пользователем строку
function hsl_obj(h, s, l) {
this.h = h;
this.s = s;
this.l = l;
this.__str__ = function() {
return "hsl(" + this.h + ", " + this.s + "%, " + this.l + ")";
}
}
var badass = new hsl_obj(76, 64, 59); // #BADA55
console.log(badass); // --> hsl(76, 64%, 59%)
console.log(badass.h); // --> 76
console.log(badass.s); // --> 64
console.log(badass.l); // --> 59
$("p").css("background-color", badass);
$("#ph").html(badass.h);
$("#ps").html(badass.d);
$("#pl").html(badass.l);
Я знаю, что я мог бы изменить __str__
к toString
и просто использовать badass.toString()
вместо этого, но я хочу знать, если этот метод возможно. Это было бы похоже на метод __str__
в python.
EDIT
Прямо сейчас, когда я называю badass
, он возвращает hsl_obj {h: 76, s: 64, l: 59}
.
Возможно, JSON.stringify (obj); '? – mrlew
Собирался сказать то же самое, поскольку вопрос немного странный :) – Janne
Когда должна возвращаться строка? – guest271314