Rumah hujung hadapan web tutorial js JS中Object对象的原型的使用方法

JS中Object对象的原型的使用方法

Mar 23, 2018 am 09:52 AM
javascript object Cara menggunakan

这次给大家带来JS中Object对象的原型的使用方法,使用JS中Object对象原型的注意事项有哪些,下面就是实战案例,一起来看一下。

对象概念

在 javascript 中, 一切引用类型均为对象。 如 function Foo () {} 中,Foo本身就是一个对象的引用。

创建对象方式 字面量方式 new 构造函数函数声明 Object.create

字面量对象

javascript语言级别快速创建对象的实例

1

2

3

4

var obj = {foo: 'foo', bar: 'bar'}; // Object对象字面量

var obj2 = [obj, 'foo''bar']; // Array数组字面量

var obj3 = /^[a-zA-Z0-9]$/; // RegExp正则字面量

var obj4 = function(){}; // Function函数字面量

Salin selepas log masuk

new 构造函数

通过内置对象的构造函数,或者自定义的函数。 使用 new 操作符,创建一个对象,并且执行构造函数方法。

1

2

3

4

var obj = new Object();

var obj2 = new Array(1000);

var obj3 = new RegExp('^[a-zA-Z0-9]$');

var obj4 = new Function('a''b''return a + b;');

Salin selepas log masuk

函数声明

函数声明创造的对象. 函数属于特殊的对象.

1

2

3

function Foo() {}

Foo instanceof Object;

Foo instanceof Function;

Salin selepas log masuk

Object.create

传入一个对象作为返回对象的原型,创建一个新对象, 并将新对象的原型指向传入的对象中。

1

2

3

4

5

6

var foo = {

 'foo''foo',

 'bar''bar'

};

var o = Object.create(foo); // o.proto = foo

console.log(o.foo); // o.proto.foo

Salin selepas log masuk

使用Object.create(null) 可以返回一个字典型对象.

1

2

3

var o = Object.create(null);

instanceof Object; // return false;

o.toString(); // Uncaught TypeError

Salin selepas log masuk

对象原型

每一个对象都有一个内置的 proto 属性指向构造它的函数prototype属性. 而构造函数的

prototype.constructor 则指向构造函数本生。一个对象的属性的寻找过程由以下几个部分组成:

寻找对象属性的数据描述符(writable, value)或存取描述符(getter, setter),如果查询到了,则返回 对应的值。如果查询不到,则进入第2步骤。寻找对象属性的值是否有被显示定义 (可以通过 Object.getOwnPropertyNames)检测,如果对象属性定义了,则返回定义的值。 如果没有,则进入第3步骤。寻找对象的隐藏原型proto对象的属性,规则同1,2步骤。如果还未找到,则重复第3步骤, 直到proto 为null 为止。

具体案例如下图所示:

检测对象原型

测试一个对象在其原型链中是否存在一个构造函数的 prototype 属性

instanceof Object.prototype.isPrototypeOf

instanceof

运算符,语言级别的检测对象的原型链是否包含构造函数的原型

1

2

3

function Foo () {}

Foo instanceof Function; // return true

Foo instanceof Object; // return true

Salin selepas log masuk

模拟instanceof查找对象的原型链的构造函数是否包含传入的构造函数, proto 在一些特定的浏览器有暴露给用户

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

function Bar () {}

function isInstanceof (obj, Constructor) {

 if (obj === null) {

 return false;

 }

 // 忽略 string, number, boolean, null, undefined 类型干扰

 if (!~['object''function'].indexOf(typeof obj)) {

 return false;

 }

 var prototype = obj.proto;

 while(prototype) {

 if (prototype.constructor === Constructor) {

  return true;

 }

 prototype = prototype.proto;

 }

 return false;

}

isInstanceof(Bar, Function);

isInstanceof(Bar, Object);

Salin selepas log masuk

isPrototypeOf

构造函数的原型对象自带的函数属性, 用于检测目标对象的原型链中是否存在构造函数的原型对象。

1

2

3

4

5

function Baz () {}

var baz = new Baz();

Baz.prototype.isPrototypeOf(baz);

Function.prototype.isPrototypeOf(baz);

Object.prototype.isPrototypeOf(baz);

Salin selepas log masuk

获取对象原型 Object.getPrototypeOf proto

1

2

3

4

5

6

var o = {};

var prototype = Object.getPrototypeOf(o);

console.log(prototype === Object.prototype); // return true

// 部分浏览器有效

var o2 = {};

console.log(o2.proto === Object.prototype); // return true

Salin selepas log masuk

设置对象原型 Object.create Object.setPrototypeOf

Object.create

返回一个对象,并设置它的原型

1

2

3

4

5

6

7

8

function Foo () {}

 function Bar () {}

 Foo.prototype.foo = 'foo';

 Bar.prototype = Object.create(Foo.prototype); 

 Bar.prototype.constructor = Bar; // 修正原型链的constructor

 var o = new Bar();

 console.log(o.foo); // return foo;

 console.log(o instanceof Bar); // return true

Salin selepas log masuk

Object.setPrototypeOf

直接设置对象的隐式原型proto

1

2

3

4

5

function Foo () {}

 Foo.prototype.name = 'foo';

 var o = Object.create(null);

 Object.setPrototypeOf(o, Foo.prototype);

 console.log(o.name); // return foo

Salin selepas log masuk

小结

对象具有许多考验开发者的一些知识点。能够完全理解并整理出来是不容易的。后续我会针对对象的继承做个详细的介绍。感谢你对脚本之家的支持。

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

Angular2 父子组件通信方式

Node.js的非对称加密详解

CSS3实现倾斜和旋转动画效果


Atas ialah kandungan terperinci JS中Object对象的原型的使用方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial Java
1664
14
Tutorial PHP
1268
29
Tutorial C#
1246
24
Bagaimana untuk menggunakan alat pembaikan DirectX? Penggunaan terperinci alat pembaikan DirectX Bagaimana untuk menggunakan alat pembaikan DirectX? Penggunaan terperinci alat pembaikan DirectX Mar 15, 2024 am 08:31 AM

Alat pembaikan DirectX ialah alat sistem profesional Fungsi utamanya adalah untuk mengesan status DirectX sistem semasa Jika keabnormalan ditemui, ia boleh dibaiki secara langsung. Mungkin terdapat ramai pengguna yang tidak tahu cara menggunakan alat pembaikan DirectX Mari kita lihat tutorial terperinci di bawah. 1. Gunakan perisian alat pembaikan untuk melakukan pengesanan pembaikan. 2. Jika ia menggesa bahawa terdapat masalah tidak normal dalam komponen C++ selepas pembaikan selesai, sila klik butang Batal dan kemudian klik bar menu Alat. 3. Klik butang Pilihan, pilih sambungan, dan klik butang Mulakan Sambungan. 4. Selepas pengembangan selesai, mengesan semula dan membaikinya. 5. Jika masalah masih tidak diselesaikan selepas operasi alat pembaikan selesai, anda boleh cuba menyahpasang dan memasang semula program yang melaporkan ralat.

Pengenalan kepada kod status HTTP 525: teroka definisi dan aplikasinya Pengenalan kepada kod status HTTP 525: teroka definisi dan aplikasinya Feb 18, 2024 pm 10:12 PM

Pengenalan kepada kod status HTTP 525: Fahami definisi dan penggunaan kod status HTTP (HypertextTransferProtocol) 525 bermakna pelayan mempunyai ralat semasa proses jabat tangan SSL, mengakibatkan ketidakupayaan untuk mewujudkan sambungan selamat. Pelayan mengembalikan kod status ini apabila ralat berlaku semasa jabat tangan Keselamatan Lapisan Pengangkutan (TLS). Kod status ini termasuk dalam kategori ralat pelayan dan biasanya menunjukkan konfigurasi pelayan atau masalah persediaan. Apabila pelanggan cuba menyambung ke pelayan melalui HTTPS, pelayan tidak mempunyai

Cara menggunakan Baidu Netdisk-Cara menggunakan Baidu Netdisk Cara menggunakan Baidu Netdisk-Cara menggunakan Baidu Netdisk Mar 04, 2024 pm 09:28 PM

Ramai rakan masih tidak tahu cara menggunakan Baidu Netdisk, jadi editor akan menerangkan cara menggunakan Baidu Netdisk di bawah Jika anda memerlukan, cepat dan lihat. Langkah 1: Log masuk terus selepas memasang Baidu Netdisk (seperti yang ditunjukkan dalam gambar Langkah 2: Kemudian pilih "Perkongsian Saya" dan "Senarai Pemindahan" mengikut arahan halaman (seperti yang ditunjukkan dalam gambar); Perkongsian Rakan", anda boleh berkongsi gambar dan fail terus dengan rakan (seperti yang ditunjukkan dalam gambar); Langkah 4: Kemudian pilih "Kongsi" dan kemudian pilih fail komputer atau fail cakera rangkaian (seperti yang ditunjukkan dalam gambar); Langkah Kelima 1: Kemudian anda boleh mencari rakan (seperti yang ditunjukkan dalam gambar) Langkah 6: Anda juga boleh mencari fungsi yang anda perlukan dalam "Function Treasure Box" (seperti yang ditunjukkan dalam gambar). Perkara di atas adalah pendapat editor

Apakah alat pengaktifan KMS? Bagaimana untuk menggunakan alat pengaktifan KMS? Bagaimana untuk menggunakan alat pengaktifan KMS? Apakah alat pengaktifan KMS? Bagaimana untuk menggunakan alat pengaktifan KMS? Bagaimana untuk menggunakan alat pengaktifan KMS? Mar 18, 2024 am 11:07 AM

Alat Pengaktifan KMS ialah alat perisian yang digunakan untuk mengaktifkan produk Microsoft Windows dan Office. KMS ialah singkatan kepada KeyManagementService, iaitu perkhidmatan pengurusan utama. Alat pengaktifan KMS mensimulasikan fungsi pelayan KMS supaya komputer boleh menyambung ke pelayan KMS maya untuk mengaktifkan produk Windows dan Office. Alat pengaktifan KMS bersaiz kecil dan berkuasa dalam fungsi Ia boleh diaktifkan secara kekal dengan satu klik Ia boleh mengaktifkan mana-mana versi sistem tetingkap dan mana-mana versi perisian Office tanpa disambungkan ke Internet dan alat pengaktifan Windows yang kerap dikemas kini Hari ini saya akan memperkenalkannya Biar saya memperkenalkan kepada anda kerja pengaktifan kms

Belajar menyalin dan menampal dengan cepat Belajar menyalin dan menampal dengan cepat Feb 18, 2024 pm 03:25 PM

Cara menggunakan kekunci pintasan salin-tampal Salin-tampal ialah operasi yang sering kita hadapi apabila menggunakan komputer setiap hari. Untuk meningkatkan kecekapan kerja, adalah sangat penting untuk menguasai kekunci pintasan salin dan tampal. Artikel ini akan memperkenalkan beberapa kekunci pintasan salin dan tampal yang biasa digunakan untuk membantu pembaca melaksanakan operasi salin dan tampal dengan lebih mudah. Kekunci pintasan salin: Ctrl+CCtrl+C ialah kekunci pintasan untuk menyalin Dengan menahan kekunci Ctrl dan kemudian menekan kekunci C, anda boleh menyalin teks, fail, gambar, dsb. ke papan keratan. Untuk menggunakan kekunci pintasan ini,

Cara menggabungkan sel menggunakan kekunci pintasan Cara menggabungkan sel menggunakan kekunci pintasan Feb 26, 2024 am 10:27 AM

Cara menggunakan kekunci pintasan untuk menggabungkan sel Dalam kerja harian, kita selalunya perlu mengedit dan memformat jadual. Menggabungkan sel ialah operasi biasa yang boleh menggabungkan berbilang sel bersebelahan ke dalam satu sel untuk meningkatkan keindahan jadual dan kesan paparan maklumat. Dalam perisian hamparan arus perdana seperti Microsoft Excel dan Helaian Google, operasi penggabungan sel adalah sangat mudah dan boleh dicapai melalui kekunci pintasan. Berikut akan memperkenalkan penggunaan kekunci pintasan untuk menggabungkan sel dalam kedua-dua perisian ini. wujud

Cara menggunakan potplayer-Cara menggunakan potplayer Cara menggunakan potplayer-Cara menggunakan potplayer Mar 04, 2024 pm 06:10 PM

Potplayer ialah pemain media yang sangat berkuasa, tetapi ramai rakan masih tidak tahu cara menggunakan potplayer Hari ini saya akan memperkenalkan cara menggunakan potplayer secara terperinci, dengan harapan dapat membantu semua orang. 1. Kekunci pintasan PotPlayer Kekunci pintasan biasa untuk pemain PotPlayer adalah seperti berikut: (1) Main/jeda: ruang (2) Kelantangan: roda tetikus, kekunci anak panah atas dan bawah (3) ke hadapan/belakang: anak panah kiri dan kanan. kekunci (4) penanda halaman: P- Tambah penanda halaman, H-Lihat penanda halaman (5) Skrin penuh/pulihkan: Masukkan (6) Kelajuan: C-pecut, 7) Bingkai sebelumnya/seterusnya: D/

Cara menggunakan alat pengaktifan Xiaoma win7 - Cara menggunakan alat pengaktifan Xiaoma win7 Cara menggunakan alat pengaktifan Xiaoma win7 - Cara menggunakan alat pengaktifan Xiaoma win7 Mar 04, 2024 pm 06:16 PM

Saya percaya bahawa ramai pengguna menggunakan alat pengaktifan Xiaoma win7, tetapi adakah anda tahu cara menggunakan alat pengaktifan Xiaoma win7 Kemudian, editor akan membawakan kepada anda cara menggunakan alat pengaktifan Xiaoma win7 Bagi mereka yang berminat dengan ini? sila ke artikel berikut Jom lihat. Langkah pertama ialah pergi ke "Komputer Saya" selepas memasang semula sistem, klik "System Properties" di menu atas, dan semak status pengaktifan Windows. Dalam langkah kedua, klik untuk memuat turun alat pengaktifan win7 dalam talian dan klik untuk membukanya (terdapat banyak sumber tersedia di mana-mana). Langkah ketiga ialah membuka alat pengaktifan Xiaoma dan klik "Aktifkan Windows secara kekal". Langkah keempat ialah menunggu proses pengaktifan selesai pengaktifan. Langkah 5: Semak status pengaktifan Windows sekali lagi dan ketahui bahawa sistem telah diaktifkan.

See all articles