Grundläggande datatyper:Value access, som låter dig manipulera det faktiska värdet som sparas i variabeln. Bastypvärden avser enkla datasegment.
Det finns fem grundläggande datatyper:Undefined、Null、String、Number、Boolean。
Citeringstyp:När man kopierar en variabel i ett objekt är det referensen för objektet som manipuleras, men när man lägger till egenskaper till objektet är det själva objektet som manipuleras. Referenstypvärden är objekt som kan bestå av flera värden.
Det finns flera typer av citat:objekt, matris, RegExp, datum, funktion, speciella grundläggande wrappertyper (String, Number, Boolean) och monolitiska inbyggda objekt (Global, Math).
För skillnaden mellan bastypvärden och referenstypvärden:
(1)Referenstypvärden lägger till egenskaper och metoder, medan bastypvärden inte kan。
(2)När man kopierar ett variabelvärde skapar bastypen ett nytt värde på variabelobjektet och kopierar det till den nya variabeln. Sedan dess,Någon verkan av de två variablerna påverkar inte den andra; Referenstypen är att kopiera en kopia av värdet som lagras i variabelobjektet till den nya variabeln, men värdet på båda variablerna pekar på ett objekt som lagras i heapen, det vill säga att de faktiskt refererar till samma objekt.Att ändra en variabel påverkar den andra。
Referens till typvärden, med en array som exempel:
Passa parametrar: Passa efter värde, kopiera värdet utanför funktionen till parametern inuti funktionen (en lokal variabel), när den lokala variabeln opereras kommer förändringen av den lokala variabeln att reflekteras utanför funktionen, men detta påverkar inte värdet utanför funktionen.
Själv kan det vara svårt att förstå när man använder objekt:
Uppenbarligen skickas parametrarna med värde, så varför kan den skapade p-instansen också få namnattributet lagt till i setName()?
Eftersom obj och p refererar till samma objekt, kommer obj att komma åt samma objekt genom referens, även om det skickas med värde. Titta på exemplet nedan för att göra det tydligt.
Skriv om obj-objektet inuti funktionen, vid denna tidpunkt refererar obj-objektet till ett lokalt objekt, och det yttre p är fortfarande den ursprungliga referensen, så det kommer inte att ändras.
Typer av analyser:
typeof:确定变量是字符串、数值、布尔值还是undefined的最佳工具。
instansof: Avgör om det är en objekttyp.
|