var a = {
toString: function() {
return 2;
},
valueOf: function() {
return 1;
}
};
var b = String(a);
var c = a + 1;
b? c?
var a = {
toString: function() {
return 2;
}
};
var c = a + 1;
c?
Для тех, кто не в курсе — волшебная функция String, может превратить все что угодно в строку(там где найдет toString), а там где не найдет выведет undefined или null
А унарные операторы вызывают методы toString или valueOf( смотря что есть)
если есть оба — valueOf
По-хорошему, тут стоило описать как это может пригодиться, и придумать полезности всякие, но надо же иногда вот такой фигней позабавиться :) Юля, взглянув на забавности, выдала — этот ваш javascript сплошное надругательство над смыслом и типизацией :)
No comments:
Post a Comment