ну вы тут и понаобсуждали
Сообщение от Niar
|
Запутался почему тогда
if( new String('') ) true
|
внимание, отвечает Дэвид Флэнаган
Сообщение от Дэвид Флэнаган
|
Прежде всего следует заметить, что попытка преобразования непустых объектов в логическое значение дает в результате значение true. Это справедливо для любых объектов (включая массивы и функции), даже для объектов оберток, которые представляют элементарные типы, при другом способе преобразования дающие значение false.
|
Сообщение от Niar
|
if (new String('')==false) alert('равно')
Ну а тут false то почему
|
а это имеет значение? Правила такие. У меня пока не было надобности это выяснить. Но если уж такое случиться - есть стандарт
p.s. конечно, интересно, почему создатели языка сделали именно такую грамматику. Но только это уже скорее не из области программирования, а из области написания компиляторов/интерпретаторов