我个人觉得php与javascript各有长处,如果能完美的结合起来,那将创造出许许多多的奇迹! 我是初次写此类文章,bug难免,请各位指正~  
    现在ajax应用非常流行,而在ajax中客户端javascript和服务端动态脚本的通信是关键。如果传输的信息比较简单,通常我们会直接采用字符串的方式,如果信息结构复杂一点,则通常用xml文档。xml文档虽然应用广泛,但是用php生成和用javascript处理却不是一件很容易的事情。这里我推荐一种xml文档的比较好简化替代方案:json!  
    首先我们来了解一下javascript的基础知识。  
    1.创建数组,可以用js内建的类array来初始化,也可以用json符号[]。下面通过两种方式创建的arr1和arr2的实质是一样的:
var arr1 = new array();  
arr1[0] = apple;  
arr1[1] = google;  
arr1[2] = longbill;
var arr2 = [apple,google,longbill]; 
注意,数组的索引也可以是字符串,如 arr1[name] = longbill; 这时的数组就相当于对象了。。。  
    2.创建对象,可以用js内建的类object来初始化,也可以用json符号{}。下面通过两种方式创建的obj1和ob2的实质也是一样的:
var obj1 = new object();  
obj1.name = longbill;  
obj1.age = 18;
var obj2 = { name:longbill,age:18 }; 
注意,这里{和}之间必须写成键:值的形式,而且不同的键:值之间要用,分割。 键中也可以包含空格等特殊字符,此时要用(引号)来引用,如 phone number:123456  
    其实在js中,数组的本质是一个对象,对象本身也是一个数组。所以, obj1.name 和 obj1[name] 是同一个引用。  
    我们还可以通过json符号的嵌套来定义复杂的s对象:
var people = [  
    {  
        name:longbill,  
        age:18  
    },  
    {  
        name:neal,  
        age:19  
    },  
    {  
        name:glocklee,  
        age:17  
    }  
]; 
//这个应该看的懂吧~~  
大部分xml文档都可以用json来表达:
ju love  
    $15
javascrip  
    $25
如果用json就可以表达为:
{  
root:  
[  
  {  
     name:ju love,  
     price:$15  
  },  
  {  
     name:javascript,  
     price:$25  
  }  
]}
是不是简化很多?
而且客户端js处理起来也很简单,只要用执行字符串函数 eval 就可以将json信息提取出来,而如果是xml文档,那就不的不用大量的标准dom操作来提取其中的数据。如:
//已经用ajax从服务端下载了一个json文件(字符串),保存在变量 json 里  
eval(var myvar = +json);  
//这样,json里的信息就表达在myvar这个变量里了。 
缺点:一旦json的格式错误,将导致服务端js系统错误,甚至崩溃。  
   解决办法:  
   最好在eval之前使用try(试探执行),如
//已经用ajax从服务端下载了一个json文件(字符串),保存在变量 json 里  
try {  
    eval(var myvar = +json);  
} catch(e) { alert('json syntax error!'); }  
//这样,即使json格式错误,也只会弹出一个提示框,而不会抛出一个脚本错误!
   
 
   