zoukankan      html  css  js  c++  java
  • JavaScript 对象

    JavaScript 对象是拥有属性和方法的数据。


    ㈠对象,属性和方法

    为了能更加清晰的了解对象,属性和方法的概念,拿身边的例子进行阐述

    ⑴对象:真实生活中,一辆汽车是一个对象。

    ⑵属性:汽车的重量和颜色是对象的属性

    ⑶方法:汽车的启动与停止是方法。

     

    所有汽车都有这些属性,但是每款车的属性都不尽相同。

    所有汽车都拥有这些方法,但是它们被执行的时间都不尽相同。

     

    ㈡JavaScript 对象

    ⑴把一个单一值(porsche)赋给名为 car 的变量:

    var car = "porsche";

    ⑵对象也是变量。但是对象包含很多值。

    把多个值(porsche, 911, white)赋给名为 car 的变量:

    var car = {type:"porsche", model:"911", color:"white"};

    ⑶值以名称:值对的方式来书写(名称和值由冒号分隔)。

      JavaScript 对象是被命名值的容器。

    ㈢对象属性

    (JavaScript 对象中的)名称:值对被称为属性。

     

    ㈣对象方法

    ⑴对象也可以有方法。

    ⑵方法是在对象上执行的动作。

    ⑶方法以函数定义被存储在属性中。

    ⑷方法是作为属性来存储的函数。

     

    ⑸示例:

    var person = {
      firstName: "Bill",
      lastName : "Gates",
      id       : 678,
      fullName : function() {
        return this.firstName + " " + this.lastName;
      }
    };

    ㈤this 关键词

    ⑴在函数定义中,this 引用该函数的“拥有者”。

    ⑵在上面的例子中,this 指的是“拥有” fullName 函数的 person 对象。

    ⑶换言之,this.firstName 的意思是 this 对象的 firstName 属性。

    ㈥对象定义

    示例:定义(创建)了一个 JavaScript 对象,空格和折行都是允许的。对象定义可横跨多行:

    <!DOCTYPE html>
    <html>
    <body>
    
    <h1>JavaScript 对象创建</h1>
    
    <p id="demo"></p>
    
    <script>
    // 创建对象:
    var person = {
        firstName : "Bill",
        lastName  : "Gates",
        age       : 42,
        eyeColor  : "blue"
    };
    
    // 显示对象中的数据:
    document.getElementById("demo").innerHTML =
    person.firstName + " 已经 " + person.age + " 岁了。";
    </script>
    
    </body>
    </html>

    ㈦访问对象属性

    有两种方法可以进行访问:

    第一种:

    objectName.propertyName

    第二种:

    objectName["propertyName"]

    ㈧访问对象方法

    通过如下语法访问对象方法

    示例1:

    <!DOCTYPE html>
    <html>
    <body>
    
    <h1>JavaScript 对象方法</h1>
    
    <p>对象方法是一种函数定义,存储为属性值。</p>
    
    <p id="demo"></p>
    
    <script>
    // 创建对象:
    var person = {
        firstName: "Bill",
        lastName : "Gates",
        id       : 12345,
        fullName : function() {
           return this.firstName + " " + this.lastName;
        }
    };
    
    // 显示对象中的数据:
    document.getElementById("demo").innerHTML = person.fullName();
    </script>
    </body>
    </html>

    ★如果不使用 () 访问 fullName 方法,则将返回函数定义:

       name = person.fullName;

    示例2:

    <!DOCTYPE html>
    <html>
    <body>
    
    <h1>JavaScript 对象方法</h1>
    
    <p>如果不使用 () 访问对象,则返回函数定义:</p>
    
    <p id="demo"></p>
    
    <script>
    // 创建对象:
    var person = {
        firstName: "Bill",
        lastName : "Gates",
        id       : 12345,
        fullName : function() {
           return this.firstName + " " + this.lastName;
        }
    };
    
    // 显示对象中的数据:
    document.getElementById("demo").innerHTML = person.fullName;
    </script>
    
    </body>
    </html>

    效果图:

     

    注意:方法实际上是以属性值的形式存储的函数定义。

    ㈨重点标记

    请不要把字符串、数值和布尔值声明为对象!

    因为如果通过关键词 "new" 来声明 JavaScript 变量,则该变量会被创建为对象

  • 相关阅读:
    人生苦短_我用Python_javascript_var_function_简单笔记_001
    人生苦短_我用Python_logging日志操作_011
    人生苦短_我用Python_configparser/yaml对配置文件读取/写入操作_010
    人生苦短_我用Python_pymysql库对Mysql数据库操作_009
    人生苦短_我用Python_openpyxl库读取Excel文件数据_008
    人生苦短_我用Python_Try_Exception异常捕捉_007
    命令行下编译打包安卓apk
    构建微服务实验环境
    Docker的安全问题以及一些预防方案
    Go 微服务实践
  • 原文地址:https://www.cnblogs.com/shihaiying/p/11497094.html
Copyright © 2011-2022 走看看