Rumah >hujung hadapan web >tutorial js >Penjelasan terperinci tentang penggunaan Objek dalam kemahiran javascript_javascript

Penjelasan terperinci tentang penggunaan Objek dalam kemahiran javascript_javascript

WBOY
WBOYasal
2016-05-16 16:17:561167semak imbas

Salin kod Kod adalah seperti berikut:

fungsi untukSetiap(o){
var html="";
untuk(var i dalam o){
html = i "=" o[i] " ";
}
console.log(html);
console.log(o);
}

//1
//Object.create(proto)
//Object.create(proto,deskriptor)
//Buat objek menggunakan prototaip dan sifat yang ditentukan
//Parameter:
//proto: Prototaip objek yang baru dibuat, yang boleh menjadi batal
//deskriptor: objek pilihan yang memetakan nama atribut kepada deskriptor atribut
//Kembalikan objek yang baru dicipta, diwarisi daripada proto, dan mempunyai sifat deskriptor.

Salin kod Kod adalah seperti berikut:

var obj = Object.create({x:1,y:2},{
z:{value:3,writable:true,enumerable:true,configurable:true}
});
forEach(obj)
obj.z=5
console.log(obj)
console.log("========================================================== = ========")

//2
//Object.defineProperties(o,deskriptor)
//Buat atau konfigurasikan berbilang sifat objek
//Parameter:
//o: Objek untuk mencipta atau mengkonfigurasi sifat
//deskriptor: Objek yang memetakan nama atribut kepada deskriptor atribut
//Kembalikan objek o

Salin kod Kod adalah seperti berikut:

Object.defineProperties(obj,{
a:{value:"a",writable:false,enumerable:true,configurable:true},
b:{value:"b",writable:false,enumerable:true,configurable:true}
})
forEach(obj);
console.log("========================================================== = ========")

//3
//Object.defineProperty(o,name,desc)
//Buat atau konfigurasikan sifat objek
//Parameter:
//o: Objek yang sifatnya akan dibuat atau dikonfigurasikan
//nama: Nama atribut yang akan dibuat atau dikonfigurasikan
//desc: Objek deskriptor sifat yang menerangkan sifat baharu yang akan dibuat atau pengubahsuaian harta sedia ada
//Kembalikan objek o

Salin kod Kod adalah seperti berikut:

Object.defineProperty(obj,"c",{value:"c",writable:false,enumerable:false,configurable:true})
forEach(obj);
console.log("========================================================== = ========")

//4
//Object.freeze(o)
//Tetapkan objek sebagai tidak berubah dan tidak akan menjejaskan sifat yang diwarisi
//Parameter:
//o: Objek untuk dibekukan
//Kembalikan benar|salah

Salin kod Kod adalah seperti berikut:

var p = {x:1,y:2}
Object.freeze(p);
p.x =2;
console.log(p);
console.log(Object.isFrozen(p)) //benar, sekali beku, ia tidak boleh dinyahbekukan
console.log("========================================================== = ========")

//5
//Object.getOwnPropertyDescriptor(o,name)
//Parameter:
//o: objek
//name: nama atribut untuk disoal
//Soal ciri atribut
//Kembalikan objek deskriptor sifat untuk sifat objek yang ditentukan Jika sifat yang ditentukan tidak wujud, kembalikan tidak ditentukan.
/*
Deskriptor atribut ialah objek JavaScript biasa yang menerangkan ciri objek Terdapat dua jenis atribut JavaScript. Atribut data mempunyai nilai dan tiga sifat: enumerable,
Boleh ditulis dan boleh dikonfigurasikan Sifat pengakses mempunyai kaedah pengambil dan/atau penetap dan kebolehbilangan.
Deskriptor atribut data:
{
nilai: sebarang nilai javascript,
boleh ditulis: benar|salah,
boleh dikira: benar|salah,
boleh dikonfigurasikan:true|false
}
Deskriptor harta aksesori:
{
get: function atau undefined: gantikan nilai atribut
set: function or undefined : gantikan kebolehtulisan
enumerable:true|false,
boleh dikonfigurasikan:true|false
}
*/

Salin kod Kod adalah seperti berikut:

var o5 = Object.getOwnPropertyDescriptor(obj,"c");
console.log(o5);
forEach(o5);
console.log("========================================================== = ========")

//6
//Object.getOwnPropertyNames(o)
//Kembalikan nama atribut bukan warisan
//Parameter:
//o: objek
//Kembalikan nama yang mengandungi semua sifat yang tidak diwarisi bagi o, termasuk sifat yang tidak boleh dikira. {enumerable:false}

Salin kod Kod adalah seperti berikut:

var o6 = Object.getOwnPropertyNames(obj);
console.log(o6);
console.log("========================================================== = ========")

//7
//Object.getPrototypeOf(o)
//Parameter:
//o: objek
//Kembalikan prototaip objek

Salin kod Kod adalah seperti berikut:

var o7 =Object.getPrototypeOf(obj);
console.log(o7);
console.log("========================================================== = ========")

//8
//Object.hasOwnProperty(propname);
//Parameter:
//propname ialah rentetan yang mengandungi nama sifat objek
//Semak sama ada harta diwarisi
//Kembalikan benar|salah

Salin kod Kod adalah seperti berikut:

console.log(obj.hasOwnProperty("x")); //=>false
console.log(obj.hasOwnProperty("z")); //=>true
console.log("========================================================== = ========")

//9
//Object.isExtensible(o);
//Tentukan sama ada atribut baharu boleh ditambah pada objek
//Parameter:
//o: Objek untuk disemak untuk kebolehskalaan
//Pulangan boleh ditambah sebagai benar|tidak boleh ditambah sebagai palsu
//Penerangan: Semua objek boleh dilanjutkan apabila dicipta sehingga ia dihantar ke Object.preventExtensions(o) Object.seal(o) atau Object.freeze(o);

Salin kod Kod adalah seperti berikut:

console.log(Object.isExtensible(obj)); // =>true
//Object.preventExtensions(obj)//Tetapkannya sebagai tidak boleh dilanjutkan
//console.log(Object.isExtensible(obj)); //=>false
console.log("========================================================== = ========")

//10
//Object.isFrozen(o)
//Tentukan sama ada objek itu tidak boleh diubah
//Parameter:
//o: Objek untuk disemak
//Jika o telah dibekukan dan tidak berubah, ia adalah benar;

Salin kod Kod adalah seperti berikut:
console.log("========================================================== = ========")

//11

//object.isPrototypeOf(o)
//Tentukan sama ada objek semasa ialah prototaip objek lain
//Parameter:
//o: Semua objek
//Jika objek ialah prototaip o, ia adalah benar Jika o bukan objek atau objek bukan prototaip o, ia adalah palsu.

Salin kod Kod adalah seperti berikut:
var o = Objek baharu();
Object.prototype.isPrototypeOf(o) // true
Array.prototype.isPrototypeOf([1,2]) //true;
Object.prototype.isPrototypeOf(Function.prototype) //true
console.log("========================================================== = ========")

//12

//Object.isSealed(o)
//Tentukan sama ada atribut objek boleh ditambah atau dipadamkan
//Parameter:
//o: Objek untuk disemak
//Jika o ditutup, ia adalah benar, jika tidak ia adalah palsu.
// Objek ditutup jika sifat baharu (tidak diwarisi) tidak boleh ditambah kepadanya dan sifat sedia ada (tidak diwarisi) tidak boleh dialih keluar.
//Kaedah yang biasa digunakan untuk menutup objek ialah Object.seal(o) atau Object.freeze(o)

console.log("=========================================== ===========")

//13

//object.keys(o)
//Kembalikan nama harta terbilang percuma
//Parameter:
//o: objek

Salin kod Kod adalah seperti berikut:
console.log(Object.keys({x:1,y:2}) ) //=>[x,y]
console.log("========================================================== = ========")

//14
//Object.preventExtensions(o)
//Hinzufügen neuer Attribute zu einem Objekt verbieten
//Parameter:
// o: Erweiterbares Objekt, das festgelegt werden soll
//Einmal auf „nicht erweiterbar“ gesetzt, kann es nie mehr in „erweiterbar“ geändert werden

console.log("======================================== ===========")


//15
//object.propertyIsEnumerable(propname)
//Überprüfen Sie, ob ein bestimmtes Attribut in der for/in-Schleife
sichtbar ist //Parameter
//propname: eine Zeichenfolge, die den angegebenen Eigenschaftsnamen des Objekts
enthält //Wenn das Objekt eine nicht geerbte Eigenschaft namens propname hat und die Eigenschaft aufzählbar ist, gebe true zurück.

Code kopieren Der Code lautet wie folgt:

var o15 = neues Objekt();
o15.x = 15;
o15.propertyIsEnumerable("x"); //true; o15.propertyIsEnumerable("y"); //false;
o15.propertyIsEnumerable("toString"); //false;
console.log("=========================================== = ========")

//16

//Object.seal(o)
//Hinzufügen oder Entfernen von Eigenschaften des Objekts verhindern
//Parameter
//o: Zu schließendes Objekt
//Das geschlossene Parameterobjekt o
zurückgeben

//17

//Object.toLocaleString()
//Gibt die lokalisierte Zeichenfolgenkennung des Objekts zurück
//Die von der Object-Klasse bereitgestellte Standardmethode toLocaleString() ruft einfach die Methode toString() auf.
//Bitte beachten Sie jedoch, dass andere Klassen (Array, Date, Number usw.) jeweils ihre eigene Version dieser Methode definieren. Wird verwendet, um eine lokalisierte Zeichenfolgenkonvertierung durchzuführen. Wenn Sie Ihre eigene Klasse definieren, müssen Sie diese Methode möglicherweise auch überschreiben.

//18

//object.toString()
//Definieren Sie die Zeichenfolgendarstellung eines Objekts
//In Javascript-Programmen wird die toString()-Methode im Allgemeinen nicht häufig aufgerufen. Im Allgemeinen ist diese Methode im Objekt definiert und das System ruft sie bei Bedarf automatisch auf, um das Objekt in eine Zeichenfolge umzuwandeln.

//19

//Object.valueOf()
//Der ursprüngliche Wert des angegebenen Objekts
//Gib den ursprünglichen Wert zurück, der dem angegebenen Objekt zugeordnet ist. Wenn ein solcher Wert vorhanden ist, wird dem geänderten Objekt kein Wert zugeordnet, das Objekt selbst zurückgeben

Kenyataan:
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