我已经在维基百科和谷歌上搜索了它,并阅读了官方文档,但我仍然没有真正理解JSON是什么,以及我为什么要使用它。

我已经使用PHP、MySQL和JavaScript / HTML构建了一段时间的应用程序,如果JSON可以让我的生活更轻松,或者让我的代码更好,或者让我的用户界面更好,那么我想知道它。谁能给我一个简洁的解释?


当前回答

有时,在不需要技术细节的地方会给出技术细节,虽然许多投票最多的答案都是准确的技术和具体的,但我个人认为它们并不比维基百科或官方文件上的答案更容易理解或简洁。

我认为JSON就是它的本质——不同语言世界中的一种语言。然而,JSON与其他语言之间的区别在于,“每个人”都会“说”JSON以及他们的“母语”。

用一个真实的例子,让我们假设有三个人。其中一人将伊博语作为他们的母语。第二个人想要与第一个人互动,然而,第一个人把约鲁巴语作为他们的第一语言。

我们能做什么?

值得庆幸的是,我们例子中的第三个人是说英语长大的,但碰巧也会说伊博语和约鲁巴语作为第二语言,因此可以充当前两个人之间的中介。

在编程世界里,第一个“人”是Python,第二个“人”是Ruby,第三个“人”是JSON,他恰好能够将Ruby“翻译”成Python,反之亦然!显然,这个类比并不完美,但是,作为一个会说两种语言的人,我相信这是一种观察JSON如何与其他编程语言交互的简单方法。

其他回答

简而言之,它是一种用于传递数据的脚本符号。在某些方面,它是XML的替代方案,本机支持基本数据类型、数组和关联数组(名称-值对,称为对象,因为这是它们所表示的内容)。

该语法用于JavaScript, JSON本身代表“JavaScript对象表示法”。然而,它已经变得可移植,并在其他语言中使用。

这里有一个有用的详细链接:

http://secretgeek.net/json_3mins.asp

尝试下面的代码来解析你的php json响应: read.php

<script
  src="https://code.jquery.com/jquery-3.2.1.min.js"
  integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4="
  crossorigin="anonymous"></script>
<script type="text/javascript">  
$.ajax({
    url:'index.php',
    data:{},
    type:"POST",
    success:function(result) {
        jsondecoded = $.parseJSON(result);
        $.each(jsondecoded, function(index, value) {
            $("#servers").text($("#servers").text() + " " + value.servername);
            console.log(value.start);
            console.log(value.end);
            console.log(value.id);
        });
    },
    statusCode: {
    404: function() {
      alert( "page not found" );
    }
  }
});
</script>

server.php

<?php 
echo '[{"start":"2017-08-29","end":"2017-09-01","id":"22"},{"start":"2017-09-03","end":"2017-09-06","id":"23"}]';
?>

我们要做一个关于大学的项目,我们面临一个非常大的问题,叫做同源政策。此外,它使得Javascript中的XMLHttpRequest方法不能向站点所在域以外的域发出请求。

例如,如果你的网站在www.example.com上,你就不能向www.otherexample.com发出请求。JSONRequest允许这样做,但是如果站点允许,您将得到JSON格式的结果(例如,它有一个以JSON返回消息的web服务)。 这是一个可以使用JSON的问题。

这里有一些实用的东西:Yahoo JSON

这很简单。JSON代表Java Script对象表示法。可以把它看作是使用XML在软件组件之间传输数据的替代方案。

例如,我最近编写了一些返回JSON的web服务,一些Javascript开发人员随后编写了调用这些服务的代码,并使用以这种格式返回的信息。

JSON格式通常用于通过网络连接序列化和传输结构化数据。它主要用于在服务器和web应用程序之间传输数据,作为XML的替代方案。