`

JavaScript里的eval()方法 与JSON的关系?

阅读更多


项目中用到JSON,以前也只是听说过,这是我第一次用,现在有一个问题,贴出来作为积累,也很是希望能有高手指点一下.

在JSP页面中,有这样的一段javascript代码:

<script Language="javascript">
    var menulist = eval(<c:out value='${model.menuListString}' escapeXml='false'  />);
</script>

这里的eval()方法也是第一次用,Google后找到了下面的说明(网址为http://today.java.net/pub/a/today/2006/04/27/building-ajax-with-dojo-and-json.html#what-is-json):

JSON is a Java library that helps convert Java objects into a string representation. This string, when eval()ed in JavaScript, produces an array that contains all of the information that the Java object contained. JSON's object notation grammar is suitable for encoding many nested object structures. Since this grammar is much smaller than its XML counterpart, and given the convenience of the eval() function, it is an ideal choice for fast and efficient data transport between browser and server.

可这个eval()是具体干什么的?在下面的这个
    var menulist = eval(<c:out value='${model.menuListString}' escapeXml='false'  />);
代码里把eval()删去后没发现什么影响.

在http://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_eval页面中看到下面的演示代码:

        <script type="text/javascript">

        eval("x=10;y=20;document.write(x*y)");
        document.write("<br />");

        document.write(eval("2+2"));
        document.write("<br />");

        var x=10;
        document.write(eval(x+17));
        document.write("<br />");

        eval("alert('Hello world')");

        </script>
可这与JSON又有什么关系呢?
0
2
分享到:
评论

相关推荐

    在Javascript中Eval函数的使用?

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它与JavaScript的对象语法相似。由于JSON字符串不能直接在JavaScript环境中操作,所以通常会使用`eval()`来转换它: ```javascript let jsonString...

    javascript eval和JSON

    ### JavaScript中的`eval`函数与JSON的理解与应用 #### `eval`函数的工作原理及应用场景 在JavaScript编程语言中,`eval`是一个全局函数,它的主要功能是接收一个字符串参数,该字符串应该包含有效的JavaScript...

    javascript中eval解析JSON字符串.docx

    ### JavaScript中eval解析JSON字符串详解 #### 一、前言 在JavaScript开发中,解析JSON字符串是一项常见的任务。其中一种方法是使用`eval()`函数。虽然这种方法并不推荐,但了解其工作原理及其潜在风险仍然非常...

    巧用eval解析json对象

    在IT行业中,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛应用于Web服务与客户端之间的数据传输。它以其简洁、易于读写的特点深受开发者喜爱。本篇将聚焦于如何巧妙地使用`eval`函数来解析...

    JSON是什么?有哪些优点?JSON和XML的区别?

    有一种叫做JSON (JavaScript Object Notation) 的轻量级数据交换格式能够替代XML的工作。它就是JSON。各语言对JSON支持的特别好,自从Ajax的流行,JSON格式传输就更流行了。 一、JSON是什么? 有一种叫做JSON ...

    json------javascript eval()以及Example

    本文将深入探讨JSON与JavaScript中的`eval()`函数的关系,并通过一个具体的示例来展示它们如何协同工作。 在JavaScript中,`eval()`函数是一个危险但强大的工具,它可以执行一个字符串作为JavaScript代码。在处理...

    javascript 自定义eval函数实现

    由于JSON是JavaScript的一个子集,我们可以使用`eval()`快速地将JSON字符串转换为JavaScript对象,但这同样存在安全隐患。最佳实践是使用`JSON.parse()`函数,它被设计为安全地处理JSON字符串,并且速度较快: ```...

    javascript中eval解析JSON字符串

    JSON字符串是JavaScript对象的字符串化表示,如果直接使用eval来解析一个JSON字符串,可能会因为JSON字符串不是有效的JavaScript语句而导致语法错误。例如,如果一个JSON对象没有被包含在圆括号内直接传递给eval,...

    javascript巧用eval函数组装表单输入项为json对象的方法.docx

    ### JavaScript巧用eval函数组装表单输入项为JSON对象的方法 在Web开发中,尤其是在使用Ajax进行前后端交互时,经常需要将表单中的输入项收集起来并转换为JSON对象,以便于通过HTTP请求(如POST)发送至服务器端...

    纯javascript实现json与对象的互相转换项目

    - `JSON.parse()`不会执行JavaScript代码,所以它比直接使用`eval()`更安全。 这个项目对于学习JavaScript深入理解数据结构、字符串操作以及递归处理有很好的实践价值。同时,它也能够帮助开发者更好地理解和掌握...

    JavaScript的eval JSON object问题

    4. JSON与eval函数的结合:在AJAX开发中,一种常见的做法是在客户端回调函数中使用eval函数将服务器返回的JSON格式字符串转换成JavaScript对象,以便于后续的数据操作和使用。代码示例如下:`var jsonData = eval...

    JavaScript 中处理JSON

    虽然不推荐,但在早期的 JavaScript 中,人们经常使用 `eval()` 函数来将 JSON 字符串转换成 JavaScript 对象。这种方法存在安全隐患,并且不被现代的最佳实践所推荐。 ```javascript function myEval() { var str...

    jQuery方法扩展:type, toJSON, evalJSON

    本文将深入探讨jQuery中的三个特定方法:type、toJSON和evalJSON,这些方法对于处理数据类型检查和JSON数据序列化与反序列化至关重要。 首先,我们来看`type`方法。在JavaScript中,数据类型检测有时会因为动态类型...

    js下用eval生成JSON对象.docx

    然而,当涉及到从服务器端获取JSON数据并将其转换为JavaScript对象时,`eval()`通常被用来解析这些数据。但是,这种方法存在一定的安全风险,因此在实际开发中,推荐使用更安全的JSON.parse()方法。 在描述中提到,...

    javascript json字符串到json对象转义问题

    `ToJson()`尝试使用`eval()`函数来解析JSON字符串,`eval()`在执行字符串作为JavaScript代码时,可以解析JSON。由于`eval()`存在安全风险,通常不推荐直接使用,但在不支持`JSON.parse()`的情况下,它可以作为一个...

    json for javascript

    JSON是互联网上最常用的数据交换格式,尤其在JavaScript与服务器端通信时,它扮演着至关重要的角色。 在JavaScript中,JSON主要由两种类型的数据构成:对象(Objects)和数组(Arrays)。对象是以大括号{}包围的...

    js使用eval解析json(js中使用json)

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它的结构与JavaScript对象相似,但通常以文本字符串的形式传输。在JavaScript中,有更安全的方法来解析JSON字符串,比如使用`JSON.parse()`函数。 ...

    javascript巧用eval函数组装表单输入项为json对象的方法

    本文实例讲述了javascript巧用eval函数组装表单输入项为json对象的方法。分享给大家供大家参考,具体如下: 在ajax方式做web开发时,经常会遇到会保存前,收集表单输入项,组成json对象,然后把对象直接post到服务端...

    javascript eval和JSON之间的联系

    总结来说,`eval`和JSON之间的关系主要体现在将JSON字符串转换为JavaScript对象上,但出于安全考虑,推荐使用`JSON.parse()`。理解它们之间的区别和交互,对于编写健壮和安全的JavaScript代码至关重要。

Global site tag (gtag.js) - Google Analytics