如何在JavaScript中访问JSON文件?

如何在JavaScript中访问JSON文件?,javascript,json,Javascript,Json,我有一个JSON文件data.JSON,还有一个嵌入JavaScript的HTML文件。我希望以简单的HTML格式访问JSON文件中的数据(file:///C:/Users/XYZ/Desktop/htmlpage.html)文件,而不是以服务器-客户端方式(.)。我尝试了以下简单代码来导入JSON文件 <!DOCTYPE html> <html> <body> <p>Access an array value of a JSON object.

我有一个JSON文件data.JSON,还有一个嵌入JavaScript的HTML文件。我希望以简单的HTML格式访问JSON文件中的数据(file:///C:/Users/XYZ/Desktop/htmlpage.html)文件,而不是以服务器-客户端方式(.)。我尝试了以下简单代码来导入JSON文件

<!DOCTYPE html>
<html>
<body>

<p>Access an array value of a JSON object.</p>

<p id="demo"></p>

<script type="text/javascript" src="F:/Folder/data.json">

var myObj, x;

x = data[0].topic;
document.getElementById("demo").innerHTML = x;

</script>

</body>
</html>

访问JSON对象的数组值

myObj,x; x=数据[0]。主题; document.getElementById(“demo”).innerHTML=x;
我读过这种使用方法

<script type="text/javascript" src="F:/Folder/data.json">

关于其他问题。但它不起作用


请告诉我访问JSON文件中数据的最简单方法。

您可以尝试在JSON文件中写入类似的内容,以便将数据分配给变量:

<!DOCTYPE html>
<html>
<body>

<p>Access an array value of a JSON object.</p>

<p id="demo"></p>

<script type="text/javascript" src="F:/Folder/data.json">

var myObj, x;

x = data[0].topic;
document.getElementById("demo").innerHTML = x;

</script>

</body>
</html>
window.data = JSON.parse('insert your json string here');
然后,您可以访问页面javascript中的
window.data
。您也可以省略
窗口。
而只分配和/或读取
数据
,这与
窗口.数据
相同

也许更干净的方法是将AJAX请求与jQuery或vanilla Javascript一起使用,这两种方法在本网站上都有很多答案


您还可以使用
jQuery.getJSON()

研究解决方案,如果您能够使用PHP完成所需的任务(从JSON文件访问数据并使用数据执行一些操作),那么使用PHP打开JSON文件将更容易。您可以使用以下代码访问JSON文件

<?php
    $str = file_get_contents('data.json');
    $json = json_decode($str, true);
 ?>

在这里,$json将是最外层的对象(如果文件以“{”)开头/array(如果文件以“[”开头)。然后您可以以常规方式使用它


也许你们中的一些人会想,为什么我要在Javascript中发布PHP解决方案?但我发现这比在Javascript中打开文件要容易得多。所以,如果允许使用PHP,就这样做。

JSON不是Javascript脚本。它只是描述数据的结构化方式。您不能将其作为Javascript脚本加载。搜索“open l”ocal files javascript提供了和。可能与您在中使用的内容重复?如果它在浏览器中,则不可能。浏览器在该区域具有严格的安全性,不允许您询问机器文件。如果它在某种应用程序中,则可能有解决方案,但这可能取决于您在中使用的内容?