js 資料型別的初步理解

2022-05-09 06:21:14 字數 2263 閱讀 1413

1、js中的型別

字串、數字、布林、陣列、物件、null、undefined

①基本資料型別

null、undefined、boolean、number、string

console.log(typeof 1);//

number

console.log(

typeof "a");//

string

console.log(

typeof

null);//

object

console.log(

typeof undefined);//

undefined

console.log(

typeof

true);//

boolean

為了便於操作基本型別值,ecmascript還提供了三個特殊的引用型別:boolean、number和string,標準庫提供了建構函式來封裝布林值、數字和字串作為物件。這些型別與其他引用型別相似,同時也具有與各自的基本包裝型別相應的特殊行為。實際上,每當讀取乙個基本型別值時,後台就會建立乙個對應的基本包裝型別的物件,從而讓我們能夠呼叫一些方法來操作這些資料。12

3vars1 ="some text";

vars2 = s1.substring(2);

vars3 =newstring("some text");

但是不同於原始的字串,string物件是乙個真正的物件。12

typeofs1;//"string"

typeofs3;//"object"

這個例子中的變數s1包含乙個字串,字串當然是基本型別值。而下一行呼叫了s1的substring()方法,並將返回的結果儲存在s2中。我們知道,基本型別值不是物件,因此從邏輯上講,它們不應該有方法(但是它們確實有方法)。其實,為了讓我們實現這種直觀的操作,後台已經自動完成了一系列的處理。當第二行**訪問s1時,訪問過程處於一種讀取模式,也就是從記憶體中讀取這個字串的值。而在讀取模式中訪問字串時,後台都會自動完成下列處理:

(1)建立string型別的乙個例項。

(2)在例項上呼叫指定方法。

(3)銷毀這個例項。

基本資料型別的值是不能影響其他值改變的。

//

傳遞基本型別時,實參傳入的是該元素的乙個副本,該元素本身並不變化。

var a = true;//

boolean

function

arr(argument)

arr(a);

//false

console.log(a);//

true

var b = 1;//

number

function

num(argument)

num(b);//0

console.log(b);//

1var c =undefined;

function

und(argument)

und(c);//1

console.log(c);//

undefined

var d = "asdf";//

string

function

str(argument)

str(d);//s

console.log(d);//

asdf

②引用型別。

引用型別通常叫做類(class)。

object、array。

引用型別的值儲存在 記憶體中的棧區和堆區。

所以,當a的值改變時,b的值也會隨之改變。

var e = {};//

obiect

var f =e;

function

obj(argument)

obj(e);

//onject

console.log(e.name);//

onject

console.log(f.name);//

onject

關於對js資料型別的理解

對於任何東西的學習,搞懂其實很簡單,並不需要話太多的時間或者精力,但是想理解得深 些 透徹些 卻很難,需要花時間 花精力去悟,很多時候看別人的東西不一定能懂,所以必要 要有自己的理解。這裡我就js的資料型別談談自己的理解,對於初學者來講,js資料型別應該是最先接觸到的知識點,羅列一下 大致有這幾種型...

我理解的js基本資料型別和引用資料型別

js是弱型別語言 變數的值決定變數的型別 js的基本資料型別,有五大類 string,number,boolean,null 值為空 underfind 變數不存在 引用資料型別 function,object,arr 區別 1 訪問方式 基本資料型別 操作和儲存都是變數的實際值 引用資料型別 值存...

資料型別的理解

include include includeusing namespace std int main cout b b b 1 b 1 b b b 1 b 1 return 0 資料型別只是固定記憶體大小的別名,我們通過資料型別定義乙個變數,那麼變數其實就是一段連續記憶體空間的別人。我們通過變數向...