опрос выявил |
[Sep. 25th, 2009|02:49 pm] |
Все хотят как можно раньше избавиться от неопределённого значения. Большинство хочет получить вместо него ноль или false. Один человек пожелал получить останов программы с ошибкой.
но никто не захотел увидеть: "fatal error: function not found" в ответ на попытку взятия длины неопределённой строки.
В этом месте все разом поняли (мой пример взят из яваскрипта). Все знают (яваскрипт - образец отвратительности ОО дизайна), но я (как всегда) про ООП ВЦЕЛОМ: Ключ должен лежать СНАРУЖИ от сейфа |
|
|
Comments: |
а, ну это знакомо:
>>> len(None)
Traceback (most recent call last):
File "", line 1, in
TypeError: object of type 'NoneType' has no len()
вообще-то тут len, а не strlen(), то есть измеряется "длина как таковая", которая для каждого объекта своя. Так что ничего удивительного, что ошибка выдаётся именно так. По сути это вариант того, что я предлагаю. подозреваю что и для js то же самое, хотя что там - не знаю.
извините, но это принципиально иная ситуация.
к сожалению, не имею времени вспоминать и перечитывать исходную тему, но про яваскрипт: там ведь есть волшебное "NaN", и как его вытащить - уже дело вкуса. а вообще, везде где возможно, разумеется, яваскрипта следует избегать. | |