人間が読める文字列を返すようにオブジェクトを作ることはできますか?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);
私はtoString
に__str__
を変更し、だけではなく、badass.toString()
を使用することができることを知っているが、私はこの方法が可能であるかどうかを知りたいです。 Pythonでは__str__
メソッドと多少似ています。私はbadass
を呼び出すとき
EDIT
は今のところ、それはhsl_obj {h: 76, s: 64, l: 59}
を返します。
多分 'JSON.stringify(obj);'? – mrlew
質問が少し奇妙なので、同じことを言っていました:) – Janne
文字列はいつ返されるべきですか? – guest271314