Показать сообщение отдельно
  #10 (permalink)  
Старый 20.01.2015, 20:05
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

В современном JS все объекты имеют встроенный метод toSource (это и есть антипод eval), который возвращает исходный код объекта, например,

alert({a: 1, v: 2}.toSource());
alert([1, 2, 3].toSource());
alert(function () {
  alert(121);
}.toSource());


Про JSON уже говорилось, но это частный случай, т.к. (JS != JSON).

Также ещё у объектов есть встроенный метод toString, но результат его работы в большинстве случае отличается от toSource, т.к. данный метод возвращает строковое представление объекта, а не его исходный код, например,

alert({a: 1, v: 2}.toString());
alert([1, 2, 3].toString());
alert(function () {
  alert(121);
}.toString());


Разумеется, эти базовые методы можно переопределять своими.

Цитата:
Я привел пример из Python. Вы действительно считаете питон говноязыком? Хм...
Да это просто тролль, их тут полно на форуме, можешь игнорить его
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 20.01.2015 в 21:03.
Ответить с цитированием