今天我看到有两种简单定义对象的方式: 
1.一种是这样定义对象的。属性有双引号。 
var person = {"name":"Jerry", "age":18,"sex":"male"};      
2.一种是这样定义对象的。属性没有双引号。 
var person = {name:"Jerry", age:18,sex:"male"};      
请问上面两种定义对象的方式有何区别? 

解决方案 »

  1.   

    我习惯第2中定义方式,基于:
    [code]
    var person = {0:"Jerry", 1:18,2:"male"}; 
    alert(person[1]);var person = ["Jerry", 18, "male"]; 
    alert(person[1]);
    [/code]
      

  2.   

    我习惯第2中定义方式,基于:var person = {0:"Jerry", 1:18, 2:"male"}; 
    var person = ["Jerry", 18, "male"]; 
      

  3.   

    区别就是第一种可以不按命名规则命名...
    例如
    var person = {"1name":"Jerry", "2age":18,"3sex":"male"}; 但
    var person = {1name:"Jerry", 2age:18,3sex:"male"};   
    不行.
      

  4.   


    请您运行:
    [code]
    var person = {0:"Jerry", 1:18, 2:"male"}; 
    alert(person[0]);
    var person = ["Jerry", 18, "male"];
    alert(person[0])
    [/code]
      

  5.   

    请您运行...var person = {0:"Jerry", 1:18, 2:"male"}; 
    alert(person[0]);
    var person = ["Jerry", 18, "male"];
    alert(person[0])PS:不是重复发帖,还不熟悉这地发代码的方法,习惯“[CODE][/CODE]”了...