对象的创建和JSON

Object类型

字面量创建对象

<script>
      var obj = {
        name: "小明",
        age: 18,
        sex: "",
      };
      console.log(obj);
      console.log(obj.name);
      console.log(typeof obj);
</script>

{}就是对象的界定符,其实就是对象的字面量。

对象有属性,所谓的属性就是这个对象的特点,特性。name,age,sex其实都是这个对象的属性(preperty)

从根本来讲,对象就是属性的无序集合。也就是和数组的根本区别

我们可以用点语法,或者方括号获得某一个属性值,和数组有点像,但是数组只能通过下标去获取。而且数组还是一个有序的集合

对象格式:

{
k:v,
k:v,
k:v,
k:v
}

我们看另外一直格式:JSON

JOSN和字面量对象的区别:

  • JSON要求所有的k必须要加引号,而字面量的对象不需要加引号,加引号也没有错。
  • JSON就是JavaScript Object Notation(JS对象表示法)。
  • JSON是一个用于交换数据的格式。所以JSON不仅仅用于JavaScript,后台语言比如PHP、Java、ASP等等都会识别JSON,所以JSON格式不仅仅是用于自己,也要兼容其他的语言。所以格式要更加的严谨

JSON格式:

{
    "k":v,
    "k":v,
    "k":v,
    "k":v
}

无论是JSON还是普通对象,下列的情况k必须要加引号,使用方括号进行获取

比如下面的

<script>
      var obj = {
        '******': "hello",
      };
      console.log(obj["******"]);
</script>

 

 下面的一些情况需要加引号

  • k是特殊字符
  • k是数字
  • k有空格
  • k是关键字或者保留字
 <script>
      var obj = {
        "****": "属性1",
        12345: "属性2",
        "get": "属性3",
        function: "属性4",
      };
      console.log(obj["****"]);
      console.log(obj["12345"]);
      console.log(obj["get"]);
      console.log(obj["function"]);
    </script>

 

 

对象打点分两种,一种是获取属性,另一种是获取方法,如果当前的对象值是一个函数,此时该值就是对象的一个方法

<script>
      var obj = {
        name: "小明",
        fun: function () {
          console.log("小明在吃饭");
        },
      };
      //调用方法
      obj.fun()
    </script>

 

posted @ 2022-01-01 23:05  keyeking  阅读(30)  评论(0编辑  收藏  举报