使用Json数据作为函数参数

时间:2015-08-22 14:42:04

标签: javascript json

我最近一直在尝试开发一个简单的应用程序,它将使用用户输入,将其转换为json并在另一个函数中使用该json来绘制图形。我设法将正确的json输出到控制台,但是当我尝试将其作为参数调用函数中使用它来绘制图形时,它无法工作。如果我手动将控制台输出直接复制到绘图功能,它可以正常工作。所以这里的问题是,如何使用Json作为函数参数。

graph obj:

var graph = {
        "nodes": [],
        "edges": []
    }

..一些填充图形的代码(这里不相关)..以函数调用结束:

console.log(JSON.stringify(graph, null, '\t')); //works perfectly if manually copied
        var inpt = JSON.stringify(graph, null, '\t');
        execute(inpt); //doesn't work

带有json行的execute():

execute(input)
elements: input,
...some more code...

1 个答案:

答案 0 :(得分:0)

不要传递JSON字符串。而是直接传递graph对象。 JSON(JavaScript Object Notation)格式是JavaScript的原生格式。 JSON字符串表示用于将对象传输到不直接支持它的环境,例如在使用C#或Java编写的服务中使用JSON对象。

当JavaScript var o = { field: "value" };中的对象作为参数传递给函数function f(p) {...}时,在函数中可以直接访问该字段p.field...

当在JavaScript范围之外需要该对象时,它应该被序列化为JSON字符串{ "field": "value" }。接收者可以按照JSON构造约定从字符串中检索字段和值。 JSON.stringify用于对象序列化。

相关问题