json小实验

看了汤姆大叔的博客http://www.cnblogs.com/TomXu/archive/2012/01/11/2311956.html

博客原文:

我认为很多JavaScript开发人员都错误地把JavaScript对象字面量(Object Literals)称为JSON对象(JSON Objects),因为他的语法和JSON规范里描述的一样,但是该规范里也明确地说了JSON只是一个数据交换语言,只有我们将之用在string上下文的时候它才叫JSON。

// 这是JSON字符串
var foo = ‘{ "prop": "val" }‘;

// 这是对象字面量
var bar = { "prop": "val" };

关于json的解读,我做一个小实验

var data = ‘{ "prop": "haha" }‘;  //如果写成{"prop":"haha"}会出错

var parsedData = JSON.parse( data );  //parsedData此时变成一个object
alert( parsedData.prop );    // haha

var returnJsonData = JSON.stringify( parsedData );
alert(returnJsonData);   //{"prop":"data"} 关于json的解读,我做一个小实验

这里的data是一个字符串,可以用JSON.parse解析

但我们一般用json发送数据和返回数据都是这样

var data = {
    "title": "xxx",
    "id" : "xx"
};
$.post("xxx.json", data, callback);

而我们的json文件是这样
{
     "success":true
}

返回后解析
 function callback(data){
      data = JSON.parse(data);
      alert(data.success); //true
}

好像跨文件发送返回json和在一个script下写的json不太一样?这是看到这样一段评论

--------------------------------------

JSON就是一个有特殊规则的字符串,按照这个规则我们就可以把这个字符串解析成JS对象。

JSON对象就是Gecko 1.9.1引擎用C++实现的一个辅助对象。帮我们方便的将符合JSON字符串转化成JS对象,或者由JS对象转向同样符合JSON规定的字符串。当然你可以起名叫JSON HELPER之类的,只要浏览器是你自己实现的话。

JS用于调整浏览器的解析和渲染过程。浏览器的这个接口不一定用JS来实现,但是JS是最流行的一种对于HTML这个树形结构的操作手段的实现。

ECMA是一种规则,DOM也是一种规则,也可以说是接口。

------------------------------------------------

json小实验

时间: 2024-11-09 01:39:10

json小实验的相关文章

DCDC纹波小实验

关于使用示波器测试纹波的注意事项 使用示波器的AC耦合方式测量 由于示波器的头套容易引人噪声,因此在测试前必需把探头的头套去掉 因为电源的高频噪声很容易通过小电感就可以滤掉,因此更关心的是中低频的噪声.测试时将示波器的带宽限制调到尽可能的低(20MHz),避免从表笔引入噪声(我之前就吃过这方面的亏) DCDC后端接LDO AMS1117-5V的Datasheet上要求的最低压差(VIN-VOUT)为1.1V到1.25V,这就要求输入要大于5V+1.1V=6.1V,如果输入不满足这个条件会怎么样呢

初识句柄操作(控制台窗口小实验)

今日学习了控制台使用句柄操作的方法. 我们都知道,使用iostream也可以向屏幕中输出语句. 但它们只能实现基本的输入输出 操作,对于控制台窗口界面的控制却无能为力,而且不能与stdio.h和conio.h友好相处,因为iostream和它们是C++两套不同的输入. 因此,我们需要句柄类来帮助我们完成这个操作. 下面直接上练习小代码,为贪食蛇清屏的小片段. 经一番查找,习得基本用法. 1 void clrscr(void) { 2 //控制台窗口信息类型 存有缓冲区大小 当前光标位置 窗口显示

留言本小实验

实验目的: 利用PHP实现发布留言,并存在txt文本文件中,还可以从文本文件中读取留言,并显示在网页上. 实验代码: 先要用个表单提交留言,写一个简单的html如下: 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 2 <html xmlns="http://www

ES6小实验-let和const(2)

继续小实验,上次写到块级作用域,那么为什么需要块级作用域呢?书中给了两个场景: 1.没有块级作用域,内层变量可能会覆盖外层变量.举例: var tmp = new Date() function f() { console.log(tmp) if(false) { var tmp = "hello world" } } f();//undefined 内层的tmp变量把外层的tmp变量覆盖,所以输出结果为undefined 2.用来计数的循环变量泄露为全局变量,举例: var s =

关于java中equals与==的区别的小实验

java中equals与==经常容易混淆,简单一点说就是equals比较的是值是否相等,是一种方法,==比较的是二者是都为同一对象,是一种操作符. 做了几个小实验比较结果. 实验一: String str1="ab": String str2="ab": System.out.println(s1==s2)://trueSystem.out.println(str1.equals(str2));//true 这里的str1与str2都指向了常量池中的同一对象,所以S

ES6小实验-字符串的扩展

ES6里面的对字符串的扩展实际上就是增加了一些方法,使对字符串的操作更加完善,下面做几个小实验来验证下: includes(): 返回布尔值,表示是否找到了参数字符串,支持第二的参数,表示开始的位置 'use strict'; var s = 'Hello world!'; console.log(s.includes('Hello'));//true startsWith(): 返回布尔值,表示参数字符串是否在源字符串的头部,支持第二的参数,表示开始的位置 'use strict'; var

一个电磁感应小实验

手头有一个坏的音响,测试放大电路没有什么问题,所以变改造了一下.做了一个电磁感应的小实验.图片如下:    原理简介: 音响本身就是一个信号放大器,所以这里我用电脑声卡输出正弦信号,经过放大到线圈输出.电磁感应,另外一个线圈便会产生电压,可以驱动一个发光二极管. 这里是 matlab 产生正弦声波的程序(来自网络): 1 Fs = 44100;%采样频率 2 T = 4; %时间长度 3 n = Fs*T;%采样点数 4 f = 40000;%声音频率 5 y = sin(2*pi*f*T*li

基于互联网内容的中文分词小实验

分词对于搜索引擎,输入法输入提示,语音识别等其它人机交互系统等都很有用.互联网的海量信息为分词研究提供了大量的,动态更新的原始资料库.很多互联网公司都有基于互联网内容的分词系统.并且采用HADOOP等分析大量数据.这些听上去很高大上,但是仔细想想基本原理应该是比较容易理解的,我们每个程序员也很容易可以研究这个领域.所以做了一个简单的POC实验. 首先写一个Spider,从互联网页面抓取内容.因为只是简单实验,我只抓取一个页面,没有做递归抓取链接页面.抓取内容过滤掉HTML标签留下纯文本. 第二部

Hadoop之词频统计小实验(基于单节点伪分布)

声明:1)本文由我bitpeach原创撰写,转载时请注明出处,侵权必究. 2)本小实验工作环境为Ubuntu操作系统,hadoop1-2-1,jdk1.8.0. 3)统计词频工作在单节点的伪分布上,至于真正实际集群的配置操作还没有达到,希望能够由本文抛砖引玉. (一)Hadoop的配置修正 网上有很多Hadoop的配置教程,可自行寻找,这一部分主要是根据自身实际情况,结合自身特点,设置Hadoop.因为有时候根据别人的教程,设置总是不成功,因为别人的教程依赖于别人的软件或操作环境特点. 本部分也