Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 14.05.2014, 13:00
Mel Mel вне форума
Аспирант
Отправить личное сообщение для Mel Посмотреть профиль Найти все сообщения от Mel
 
Регистрация: 24.02.2012
Сообщений: 33

Странный eval
Подскажите, как именно воспринимается Javascript'ом такой вот код:
alert (eval ('01010101'))

Если первая цифра — ноль, а вторая от нуля до семи, результатом будет являться некое число, не имеющее отношения к указанному. Например, в приведённом случае это будет 266305.
Ответить с цитированием
  #2 (permalink)  
Старый 14.05.2014, 13:08
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Как число в 8-й системе исчисления

alert(parseInt('01010101', 8) == 01010101);


Но это поведение было убрано в стандарте ECMAScript5 и если запустить выполнение с флагом 'use strict', то получим эксепшен.


(function () {
    'use strict';

    try {
        eval('01010101');
    
    } catch (err) {
        alert(err);
    }
})();
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 14.05.2014 в 13:11.
Ответить с цитированием
  #3 (permalink)  
Старый 14.05.2014, 13:14
Mel Mel вне форума
Аспирант
Отправить личное сообщение для Mel Посмотреть профиль Найти все сообщения от Mel
 
Регистрация: 24.02.2012
Сообщений: 33

Действительно. Спасибо.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Непонятное(для меня) поведение eval FanAizu Общие вопросы Javascript 1 06.05.2014 19:43
Обработка json tion Общие вопросы Javascript 15 12.05.2013 18:39
Как вызвать eval в контексте другой функции для доступа к ее локальным переменным? Почемучкин Общие вопросы Javascript 8 29.10.2012 22:31
Не работает eval в IE ..::Silence::.. Общие вопросы Javascript 8 25.03.2009 13:16
Roll-up menu Tanya Общие вопросы Javascript 5 29.08.2008 17:28