Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.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 存储将传递给jQuery插件的JSON数据的最佳实践_Javascript_Jquery_Json_Naming Conventions - Fatal编程技术网

Javascript 存储将传递给jQuery插件的JSON数据的最佳实践

Javascript 存储将传递给jQuery插件的JSON数据的最佳实践,javascript,jquery,json,naming-conventions,Javascript,Jquery,Json,Naming Conventions,如果JSON只是一个字符串数组,那么我正在寻找存储JSON的“最佳实践”。它应该存储在HTML页面中脚本块的变量中吗?它是否应该存储在HTML之外的JavaScript文件中进行分离?还是应该存储在插件本身中 如果它应该是一个外部js文件,那么该文件的“最佳实践”命名方案是什么?我知道接受的jQuery插件名称是jQuery.plugin.js或jQuery.plugin-min.js(用于缩小文件)。视情况而定,如果您需要JSON,您可以将其存储在任何地方以执行: <script>

如果JSON只是一个字符串数组,那么我正在寻找存储JSON的“最佳实践”。它应该存储在HTML页面中脚本块的变量中吗?它是否应该存储在HTML之外的JavaScript文件中进行分离?还是应该存储在插件本身中


如果它应该是一个外部js文件,那么该文件的“最佳实践”命名方案是什么?我知道接受的jQuery插件名称是jQuery.plugin.js或jQuery.plugin-min.js(用于缩小文件)。

视情况而定,如果您需要JSON,您可以将其存储在任何地方以执行:

<script> var myJsonObj = { ... }; </script>
var myJsonObj={…};
如果有大量数据,而您不需要立即使用这些数据,那么您可以随时对名为“Data.json”的文件进行ajax调用


对于插件名称的命名,这完全取决于您,但我相信jquery.pluginname.js是标准的命名方式。

我会让sktrdie为这样的文件添加扩展名.json。我第一次玩JSON时遇到的一个问题是JSON字符串不是有效的JavaScript文件

例如,如果我调用包含以下内容的文件:

{
    'foos': 'whatever',
    'bar': false,
    'items': [1,2,3]
}
作为标记的src,我得到以下错误:

Error: invalid label
Line: 2, Column: 1
Source Code:
 'foos': 'whatever',
在过去,我实际上将JSON字符串隐藏在或跨距中,如下所示:

<div id="jsonStorage" style="display:none">
{'foos': 'whatever','bar': false,'items': [1,2,3]}
</div>

{'foos':'whatever','bar':false,'items':[1,2,3]}

我还为此使用了隐藏表单字段。

如果它是插件的一部分,即默认配置,我会将其存储在插件文件本身中。如果它是插件的外部配置,则视情况而定。将其存储在HTML中的变量中可能是有意义的,即

<script>
var myConfig = {
  "foo" : "bar"
};
</script>

变量myConfig={
“foo”:“bar”
};
如果您需要由后端代码生成任何JSON,则情况可能尤其如此


实际上,答案是“视情况而定”——你能提供更多细节吗?

因此,如果我将其命名为data.json,我假设我只使用getJSON来获取文件?$。getJSON使用“script”标记hack来获取数据,在我看来,您应该只用于“跨域”请求。一个简单的$.ajax就足够了。如何在JS中引用字符串常量?您必须分配'var a={'foos':'whatever'}'并包含JS。