САЙТЫ  ПОД  КЛЮЧ
ОНЛАЙН-СЕРВИСЫ СПРАВОЧНИКИ SEO-ИНСТРУМЕНТЫ РАЗВЛЕЧЕНИЯ

Справочник Javascript

eval

Синтаксис

eval(codeStr)

Аргументы

codeStr
код для выполнения, может использовать переменные и свойства существующих объектов

Описание, примеры

Пример:
a = "alert(1)"
eval(a)

Метод eval возвращает значение последнего вычисленного выражения.

Пример:
var str = "if (a) { 1+1 } else { 1+2 }"
var a = true
var b = eval(str)
alert("b равно : " + b) // 2
 
// теперь поменяем "a"
 
a = false
b = eval(str)
alert("b равно : " + b) // 3

Если аргумент eval - не строка, то возвращается аргумент без изменения:

Пример:
r = new RegExp('a')
r == eval(r) // true

Можно обойти это прямым вызовом toString:

Пример:
function forceEval(obj) {
    return eval(obj.toString())
}

Не используйте eval

Выполнение кода в eval может быть небезопасно. При таком выполнении затруднена отладка. В современном javascript, как правило, можно воспользоваться другими языковыми средствами вместо eval.

eval для JSON

Как правило, eval используют для разбора формата JSON.

var = eval('('+json+')')

Такой способ небезопасен, но наиболее быстр.

Второй параметр

В старых реализациях javascript у eval мог быть второй параметр - объект obj, в контексте которого выполнялся код.

В современном javascript для этого используется with:

Пример:
Выделить все
eval(code, obj) // старый вариант
 
with(obj) {
    eval(code) // современный вариант
}

 

Это интересно

У интернета нет какого либо центра, поэтому все его ресурсы подсчитать невозможно. Но существует группа компаний, которая обеспечивает выход в интернет, причем на государственном уровне. Конечно они берут за это деньги. Возможность выхода они передают мелким компаниям, те еще более мелким, пока не доходят до вашего провайдера, которому вы оплачиваете подключение.


Наши реквизиты
WMID: 309688839848
WMR: R325885159214
E-mail: 
  BL:Бизнес-уровень [BL]
QR-код сайта
Онлайн-радио
Больше радиостанций