Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在JavaScript中使用和存储json文本_Javascript_Json - Fatal编程技术网

在JavaScript中使用和存储json文本

在JavaScript中使用和存储json文本,javascript,json,Javascript,Json,我正在制作一个2D,自上而下的塞尔达风格的网络单人rpg 我想以JSON格式存储对话框 目前,我将json作为一个外部javascript文件。json存储在js/json.js中: function getJson() { var json = { "people" : [ {//NPC 1 - rescue dog etc... 然后我在我的主游戏javascript文件中使用它,例如` var json = getJson(); 然后按如下方式使用

我正在制作一个2D,自上而下的塞尔达风格的网络单人rpg

我想以JSON格式存储对话框

目前,我将json作为一个外部javascript文件。json存储在js/json.js中:

function getJson() {

var json = {
    "people" : 
    [
        {//NPC 1 - rescue dog

etc...
然后我在我的主游戏javascript文件中使用它,例如
`

var json = getJson();
然后按如下方式使用:

Labels[index].text = json.people[index].dialogs.start.texts[0];
如果我将json作为js文件保存在javascript函数中,这有关系吗?还是应该将其存储为
.txt
文件,然后进行解析


谢谢

这没关系,但JSON数据也是JavaScript,所以将其存储为
.js
,以后您可以根据需要向其添加更多与数据相关的函数,顺便说一句,您的数据文件已经有了
getJSON
函数,因此将其存储为
.txt


另一方面,如果API为这些数据提供服务,它根本不需要任何扩展。

这没关系,但JSON数据也是JavaScript,因此将其存储为
.js
,以后如果需要,您可以向其添加更多与数据相关的函数,顺便说一句,您的数据文件已经有了一个
getJSON
函数,所以将其存储为
.txt


另一方面,如果API为这些数据提供服务,那么它根本不需要任何扩展。

最好以纯JSON格式存储数据,并通过或检索数据,如果您使用的是普通JavaScript。否则,看起来您正在将
getJson()
添加到全局作用域,如果在别处定义了另一个
getJson()
,则可能会导致冲突

因此,您可以拥有一个与现在几乎相同的
dialog.json
,只是没有不必要的
getJson()
函数:

{
    "people" : 
    [
        {//NPC 1 - rescue dog
         ...
        }
    ]
}
如果选择使用jQuery:

var dialog;
$.getJSON('json/dialog.json', function(data) {
    dialog = data;
    // Asynchronous success callback.
    // Now dialog contains the parsed contents of dialog.json.
    startGame();
});

将数据与逻辑分开。

如果您使用的是普通JavaScript,最好以纯JSON格式存储数据并通过或检索。否则,看起来您正在将
getJson()
添加到全局作用域,如果在别处定义了另一个
getJson()
,则可能会导致冲突

因此,您可以拥有一个与现在几乎相同的
dialog.json
,只是没有不必要的
getJson()
函数:

{
    "people" : 
    [
        {//NPC 1 - rescue dog
         ...
        }
    ]
}
如果选择使用jQuery:

var dialog;
$.getJSON('json/dialog.json', function(data) {
    dialog = data;
    // Asynchronous success callback.
    // Now dialog contains the parsed contents of dialog.json.
    startGame();
});
将数据与逻辑分开