Základní typy dat:Přístup k hodnotě, který vám umožní manipulovat s reálnou hodnotou uloženou v proměnné. Hodnoty základního typu označují jednoduché datové segmenty.
Existuje pět základních typů dat:Undefined、Null、String、Number、Boolean。
Typ citace:Při kopírování proměnné objektu je manipulována reference objektu, ale při přidávání vlastností objektu je manipulován skutečný objekt. Hodnoty typu reference jsou objekty, které mohou být složeny z více hodnot.
Existuje několik typů citací:objekt, pole, RegExp, Date, Funkce, speciální základní typy obalů (String, Number, Boolean) a monolitické vestavěné objekty (Globální, Matematika).
Pro rozdíl mezi hodnotami základního typu a hodnotami referenčního typu:
(1)Hodnoty referenčních typů přidávají vlastnosti a metody, zatímco základní hodnoty typů nemohou。
(2)Při kopírování hodnoty proměnné základní typ vytvoří novou hodnotu na objektu proměnné a zkopíruje ji do nové proměnné. Od té doby,Žádná akce těchto dvou proměnných neovlivňuje druhou; Typ reference spočívá v zkopírování kopie hodnoty uložené v proměnném objektu do nové proměnné, ale hodnota obou proměnných ukazuje na objekt uložený v haldě, tedy že se skutečně odkazují na stejný objekt.Změna jedné proměnné ovlivňuje druhou。
Odkazování na hodnoty typu, například pole (array):
Předání parametrů: Pass by value, zkopírování hodnoty mimo funkci do parametru uvnitř funkce (lokální proměnné), při ovládání lokální proměnné se změna lokální proměnné odrazí mimo funkci, ale neovlivní to hodnotu mimo funkci.
Samozřejmě, může být obtížné to pochopit při používání objektů:
Parametry jsou samozřejmě předávány podle hodnoty, tak proč může instance vytvořené p dostat také atribut jména přidaný v setName()?
Protože obj a p odkazují na stejný objekt, obj přistupuje ke stejnému objektu podle odkazu, i když je předáván podle hodnoty. Podívejte se na příklad níže, abyste to bylo jasné.
Přepiš objekt obj uvnitř funkce, v tuto chvíli objekt odkazuje na lokální objekt a vnější p je stále původní reference, takže se nezmění.
Typy testů:
typeof:确定变量是字符串、数值、布尔值还是undefined的最佳工具。
instanceof: Určit, zda jde o typ objektu.
|