|
05.11.2014, 12:23
|
Интересующийся
|
|
Регистрация: 08.10.2013
Сообщений: 24
|
|
Почему alert(18306744..toString(32)); выводит Hello
Почему alert(18306744..toString(32)); выводит Hello?
Собсно скинули вот такую конструкцию с вопросом, почему.
Гугл мне ничего не подсказал. Если не сложно подскажите.
|
|
05.11.2014, 12:29
|
|
|
Регистрация: 10.07.2008
Сообщений: 3,873
|
|
alert(parseInt('hello', 32)) // 18306744
Потому что в системе счисления с основанием 32 последовательность символов hello соответствует числу 18306744 в десятичной системе счисления.
Последний раз редактировалось Octane, 05.11.2014 в 12:31.
|
|
05.11.2014, 12:37
|
Интересующийся
|
|
Регистрация: 08.10.2013
Сообщений: 24
|
|
Спасибо за ответ.
|
|
05.11.2014, 20:13
|
Профессор
|
|
Регистрация: 23.10.2010
Сообщений: 2,718
|
|
Еще вопрос, почему toString(null) рисует мне слово null?
Ну то есть как тут понимать что из ничего берется целых 4 буквы? Это скольки-разрядная система счисления?
|
|
05.11.2014, 20:40
|
|
|
Регистрация: 10.07.2008
Сообщений: 3,873
|
|
toString(null) не рисует null, а выбрасывает исключение, потому что null приводится к 0, а системы счисления с основанием 0 не существует
|
|
05.11.2014, 20:47
|
Профессор
|
|
Регистрация: 23.10.2010
Сообщений: 2,718
|
|
А кто тогда рисует слово null?
var some = elem.getAttribute('no_such_attr_at_all'); // null
elem.title = some; // строка "null"
это же toString() работает, или кто там рендерит проперти?
Ну да, не в аргумент, я по шаблону написал, null.toString(); тогда.
|
|
05.11.2014, 20:51
|
Профессор
|
|
Регистрация: 23.10.2010
Сообщений: 2,718
|
|
Единственное место где я задумался почему php не рендерит "NULL" это запись в БД, в допустим timestamp. Приходится вручную профтыкать. А js в какую-такую БД предназначен писать свои "null"?
|
|
05.11.2014, 20:51
|
|
|
Регистрация: 10.07.2008
Сообщений: 3,873
|
|
Сообщение от kostyanet
|
А кто тогда рисует слово null?
var some = elem.getAttribute('no_such_attr_at_all'); // null
elem.title = some; // строка "null"
|
Метод getAttribute возвращает null, причем тут toString вообще?
Сообщение от kostyanet
|
Ну да, не в аргумент, я по шаблону написал, null.toString(); тогда.
|
Это не будет работать, потому что null – примитив, у него нет прототипа, в котором бы был метод toString.
|
|
05.11.2014, 21:10
|
Профессор
|
|
Регистрация: 23.10.2010
Сообщений: 2,718
|
|
Сообщение от Octane
|
Метод getAttribute возвращает null
|
Он что - строку null возвращает - из 4-х букв?
|
|
05.11.2014, 21:14
|
Профессор
|
|
Регистрация: 23.10.2010
Сообщений: 2,718
|
|
Я про что пишу. Во всех нормальных языках чтобы увидеть NULL, FALSE, UNDEFINED и тп - надо специальными методами ковырять нутро переменной. В JS же х проссышь - ну пишет тебе в консоли null и пишет. А какой - увидишь только в интерфейсе.
Да в общем вопрос риторический. Понятно что падла рендерит null без спроса.
|
|
|
|