Rumah >hujung hadapan web >tutorial js >Nilai primitif dan kompleks dalam petua JavaScript_javascript
Perkataan sebelumnya
Jenis data JavaScript boleh dibahagikan kepada dua jenis: jenis primitif dan jenis rujukan. Jenis primitif juga dipanggil jenis asas atau jenis mudah Jenis data asas JavaScript termasuk jenis Undefined, Null, Boolean, Number dan String juga dipanggil jenis kompleks, iaitu Object dalam Javascript. Sejajar dengan itu, nilai mereka juga dipanggil nilai primitif dan nilai kompleks masing-masing
Ciri-ciri
Nilai primitif
Ringkasnya: nilai primitif ialah nilai tetap dan mudah, iaitu segmen data ringkas yang disimpan dalam timbunan, iaitu, nilainya disimpan terus di lokasi akses berubah.
Nilai primitif ialah bentuk paling rendah atau paling ringkas yang mewakili data atau maklumat yang tersedia dalam Javascript. Nilai jenis primitif dipanggil nilai primitif kerana ia tidak boleh dikurangkan. Maksudnya, nombor ialah nombor, aksara ialah aksara, nilai Boolean adalah benar atau salah, dan null dan undefined adalah null dan undefined. Nilai itu sendiri adalah mudah dan tidak boleh mewakili nilai yang terdiri daripada nilai lain
Apakah jenis jenis primitif?
Jenis primitif mempunyai lima jenis berikut: Undefined, Null, Boolean, Number, String
Kita boleh menggunakan typeof untuk menentukan sama ada sesuatu jenis berada dalam skop jenis tertentu.
jenis pengendali
Menggunakan operator jenis pada pembolehubah atau nilai akan mengembalikan salah satu daripada nilai berikut:
Nota:
1. Nilai pulangan ialah jenis rentetan.
2. Berbanding dengan jenis asal, masih terdapat perbezaan nol Ini agak istimewa
Nilai kompleks
Kaedah penyimpanan
Storan tindanan
Storan timbunan
Kaedah akses
Akses mengikut nilai
var myString = 'foo'; var myStringCopy = myString; var myString = null; console.log(myString,myStringCopy);//null,'foo'
Lawatan petikan
var myObject = {}; var copyOfMyObject = myObject;//没有复制值,而是复制了引用 myObject.foo = 'bar';//操作myObject中的值 //现在如果输出myObject和copyOfMyObject,则都会输出foo属性,因为它们引用的是同一个对象 console.log(myObject,copyOfMyObject);//Object{foo="bar"}
Perbandingan
var price1 = 10; var price2 = 10; var price3 = new Number('10'); var price4 = price3; console.log(price1 == price2);//true console.log(price1 == price3);//false price4 = 10; console.log(price4 == price3);//true console.log(price4 === price3);//false var objectFoo = {same:'same'}; var objectBar = {same:'same'}; console.log(objectFoo == objectBar);//false var objectA = {foo: 'bar'}; var objectB = objectA; console.log(objectA == objectB);//true
Atribut dinamik
var str = 'test'; str.property = true; console.log(str.property);//undefined var objA = {property: 'value'}; var pointer1 = objA; var pointer2 = pointer1; objA.property = null; console.log(objA.property,pointer1.property,pointer2.property);//null null null
Type d'emballage
Lorsqu'une valeur primitive est utilisée comme objet créé par le constructeur, Javascript la convertira en objet afin que les propriétés et méthodes de l'objet puissent être utilisées, puis supprimera les propriétés de l'objet et la restituera à la valeur primitive.