问题标签 [eval]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
8 回答
19698 浏览

php - PHP:相当于使用 eval 的包含

如果代码相同,则似乎存在以下差异:

include 'external.php';

eval('?>' . file_get_contents('external.php') . '<?php');

有什么不同?有人知道吗?


我知道这两者是不同的,因为include工作正常并且eval会出错。当我最初问这个问题时,我不确定它是在所有代码上还是在我的代码上都出现错误(并且因为代码是eval编辑的,所以很难找出错误的含义)。但是,在研究了答案之后,事实证明,你是否得到错误并不取决于 . 中的代码external.php,而是取决于你的 php 设置(short_open_tag准确地说)。

0 投票
3 回答
1986 浏览

jquery - JQUERY 计算一个字符串

我想在 jquery 中评估这个脚本:

任何人都可以帮助我吗?我很不喜欢这个。

谢谢

0 投票
2 回答
2891 浏览

javascript - 当我只想调用一个函数时,eval() 的更安全的选择是什么?

我知道 PHP 有call_user_func,我只是想知道 JavaScript 是否有类似的东西,我想调用的方法在哪里,例如:object.set$fieldID($fieldValue)

我宁愿不通过 if/else/switch 块来正确执行一行代码。

如果有帮助,我正在使用 jQuery。

0 投票
2 回答
4377 浏览

python - \r\n vs \n 在 python eval 函数中

为什么 eval 函数不适用于 \r\n 但适用于 \n。例如 eval("for i in range(5):\r\n print 'hello'") 不起作用 eval("for i in range(5):\n print 'hello'") 有效

我知道没有问题,因为使用 replace("\r","") 已得到纠正,但有人知道为什么会发生?

--编辑--哦!抱歉,确切地说,我的意思是 exec。出现回车是因为我正在通过 POST 从 HTML 文本区域读取(我在 Linux 机器上)。现在更清楚了,谢谢大家。

0 投票
3 回答
718 浏览

perl - Perl 中的特殊变量 $@ 是什么意思?

我正在尝试理解以下代码:

0 投票
2 回答
129 浏览

php - 有没有一种方法可以在 MySQL 数据库中存储对各种 PHP 函数的调用而没有使用 eval() 的风险?

我正在为一个包含许多函数的特定项目构建一个非常基本的 CMS ,其中包含 MySQL 数据库中的上述函数。

为每个可能的函数做一个 str_replace 将是一个皮塔饼,我意识到使用 eval() 有时是危险的。有没有更好、更有效的方法来做到这一点?我很确定可以这样做,因为这是在 Textpattern 中设置模板的方式。

0 投票
3 回答
2645 浏览

perl - 在 Perl 中,当我尝试使用字符串 eval 时,为什么会出现语法错误?

为什么这不起作用?

给出:

0 投票
3 回答
5944 浏览

c# - 在 C# 中实现 JS 评估

可能重复:
C# eval 等效项?

重复的如何动态评估 C# 代码?

我们如何在 C# 中实现 JS eval() 如果可能的话提供一个例子.. 谢谢

0 投票
1 回答
906 浏览

php - 带有 eval 代码执行的 heredoc

我尝试了几种方法来尝试使其正常工作,但没有运气!

我有一个这样的页面(示例):

这导致没有输出什么的,想不出解决办法!

0 投票
11 回答
20273 浏览

javascript - 执行使用 JavaScript eval() 创建的匿名函数

我有一个函数及其内容作为字符串。

现在,我执行 eval() 以实际在变量中获取该函数。

如果我没记错的话,在 Chrome 和 Opera 中,只需调用

调用该函数并显示警报。

但是,在其他浏览器中并非如此。没啥事儿。

我不想争论哪种方法是正确的,但我该怎么做呢?我希望能够调用 variable(); 执行存储在该变量中的函数。