Показать сообщение отдельно
  #4 (permalink)  
Старый 31.12.2009, 16:26
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

var v1 = new String("tralala");

switch (v1.toString()) {
    case "tralala": alert(1); break;
    default: alert(2);
}
а бесит вас от незнания того, что можно делать с помощью switch:
var a = {};
var b = a;

switch (a) {
    case b: alert(1); break;
    default: alert(2);
}
метки могут указывать не только на строки, поэтому и не срабатывает встроенный метод toString, как в случае с alert, чтобы можно было сравнить ссылки на объекты.
var v1 = new String("tralala");
alert(v1); // тут автоматически срабатывает toString: alert(v1.toString())

v1.toString = function () { return "O_o"; };
alert(v1);

Последний раз редактировалось Octane, 31.12.2009 в 16:54.
Ответить с цитированием