我是靠谱客的博主 傻傻蜜蜂,最近开发中收集的这篇文章主要介绍eval语法报错 ie10_javascript eval()解析函数字符串时出现“语法错误”,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

我在服务器端的配置文件中指定了一些javascript代码。由于我不能在配置语言(Lua)中指定JavaScript函数,所以我将它作为一个字符串。服务器返回一些JSON中的字符串,我让客户机使用一个清理函数来解释它:

parse_fields = function(fields) {

for (var i = 0; i < fields.length; ++i) {

if (fields[i].sortType) {

sort_string = fields[i].sortType;

fields[i].sortType = eval(sort_string);

}

return fields;

}

};

所以基本上它只是评估

sortType

如果它存在。问题是Firebug在

eval()

行。当我在Firebug控制台上运行相同的步骤时,它不会产生任何问题,我可以按预期执行函数。我尝试了一些不同的变化:

window.eval

而不是平原

eval

,存储

排序类型

正如我在上面所做的,尝试对字符串进行小的变化。

的样本值

fields[i].sortType

"function(value) { return Math.abs(value); }"

. 以下是我在Firebug控制台中进行的测试:

>>> sort_string

"function(value) { return Math.abs(value); }"

>>> eval(sort_string)

function()

>>> eval(sort_string)(-1)

1

以及Firebug中的错误本身:

syntax error

[Break on this error] function(value) { return Math.abs(value); }

最后一个可能相关的位是,这一切都被包装在一个ext-js中。

onReady()

函数,具有

Ext.ns

顶部的命名空间更改。但我认为

窗口.eval

将呼叫全球

埃瓦

不管有什么可能

埃瓦

在更具体的名称空间中。

任何想法都会受到赞赏。

最后

以上就是傻傻蜜蜂为你收集整理的eval语法报错 ie10_javascript eval()解析函数字符串时出现“语法错误”的全部内容,希望文章能够帮你解决eval语法报错 ie10_javascript eval()解析函数字符串时出现“语法错误”所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部