日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

js 对象和构造函数

發布時間:2025/3/12 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 js 对象和构造函数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、對象的創建方法

題外話:

  • java c++ 同樣能生產出對象,但是是死的

  • JavaScript 生產出的對象是活的,更像是人的生長過程,后天可以增加和刪除方法

  • 用字面量創建

    var obj = {};

    二、對象的增刪改

  • let obj = {};obj.name = '張三'; obj.age = 18;
  • delete obj.age;

    一旦經歷了 var 的操作,所得出的屬性,window ,這種的屬性叫做不可配置的屬性。不可配置的屬性 delete 不掉

    var a = 'abc'; a.name = 'mary'; console.log(a.name); // undefined
  • obj.name = '李四';

    二、構造函數

  • 系統自帶的構造函數 new Object()
  • Object 就像一個對象工廠一樣,執行一次生成一個對象,

    并且每一次生成的對象都是一模一樣且獨一無二的

  • 自定義的

  • Object.create(prototype)

  • var obj = new Object(); --> var obj = {}; // 可以靈活地往里面添加東西 obj.name = '張三'; obj.age = 18; obj.sex = 'male';// 刪除東西 delete obj.sex; // 構造函數 function Person() {}// 必須加 new 操作符,構造函數必須遵循大駝峰式命名規則(首字母大寫)-- TheFirstName // 小駝峰式 -- theFirstName var person = new Person();

    用字面量創建對象和用構造函數創建對象的結果是一樣的

    var obj = {}; var obj1 = new Object(); // 在控制臺打開里面的東西都是一樣的 ? 因為要經過包裝類

    三、構造函數的內部原理

    構造函數三部曲

  • 在函數體最前面隱式加上 this = {}
  • 執行 this.xxx = xxx
  • 隱式的返回 this 對象
  • 有了 new 關鍵字之后,就能讓普通函數擁有構造函數的功能

    function Student(name, age, sex) {// 1. 在函數體的最前面隱式添加一個 this 對象// var this = {// name : '',// age : '',// sex : ''// }// 2. 執行 this.xxx = xxxthis.name = name;this.age = age;this.sex = sex;// 3. 隱式返回 this 對象// return this; }var student = new Student('張三', 18, 'male'); // 用一個變量接收一下

    模擬構造函數

    function Person(name, height) {var that = {};that.name = name;that.height = height;return that; }// 只要加了 new 關鍵字,就會讓上面的函數的返回值強制變成一個對象 var person = Person('張三', 180);
    • 對象實例化:new 一個對象
    • 對象實例化只有得到的每一個對象叫實例 – 對象 person 是 構造函數 Person 的一個實例

    檢測某個實例是不是某個構造函數所構造出來的 ? 構造函數.prototype.isPrototypeOf(實例)

    Person.prototype.isPrototypeOf(person); // true

    返回某個實例的原型 ? Object.getPrototypeOf(實例)

    Object.getPrototypeOf(person); // 返回 person 的原型對象 --- {construcotr:...}

    總結

    以上是生活随笔為你收集整理的js 对象和构造函数的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。