在js对象与xml或json中存储大量文本

时间:2014-05-08 13:05:07

标签: javascript jquery ajax xml json

我现在正在创建一个RPG并将对话文本存储在JS对象中,如下所示:

var dialog = {

  quests : {
     Lee : {
        "1 - Introductions" :
        {
            "chinese" :
            [
                "Hi, I'm Lee.",
                "I checked your information, I think we can use you...",

然后按原样访问它:

game.data.NPCdialog = dialog.quests[game.data.currNPC][currTask]["chinese"][0];

我问如何使用require.js动态加载js文件,因为我想在每个级别存储几个npc_dialog文件并根据需要加载它们。我在这里问:

using requireJS to dynamically load js files

两个回复者都提到使用XML或JSON来存储对话文本而不是JS对象,并用AJAX加载它。

为什么以更好的格式存储文本?

2 个答案:

答案 0 :(得分:3)

将其存储为JSON或XML并不是更好或更糟。它在您的方案中更容易加载和使用。这是一个更简单的解决方案。

答案 1 :(得分:1)

将它存储在较小的json对象中并使用AJAX加载它们的好处是,该站点将在浏览器中使用更少的资源,您可以在需要时加载所需的数据。如果数据不是太大,那么将它全部加载到javascript对象中将提供更快的访问。

需要注意的一点是,您的javascript对象可能包含脚本,而不仅仅是数据,如果您使用JSON或XML文件,那么它们仅限于数据。