溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JavaScript的變量與數(shù)據(jù)類型是什么

發(fā)布時間:2022-01-04 10:02:40 來源:億速云 閱讀:336 作者:柒染 欄目:開發(fā)技術

這篇文章給大家介紹JavaScript的變量與數(shù)據(jù)類型是什么,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

前言:

我不是搞前端,而是搞后端的。本命編程語言是java。學習js的嘛,因為看到室友能做出動態(tài)網(wǎng)頁,而我只能做出靜態(tài)網(wǎng)頁,再加上下個學期要學所以提前來學習學習。

溫馨提示:

java和javsScript沒有半毛錢關系,只是javaScript被SUN公司收購后,把改成jaaScript,第一是因為SUN的主打產(chǎn)品是java,第二是利用java的知名度去javaScript做廣告,擴大javaScript的影響力。

接下來就分享今日的干貨

變量

什么是變量?

我們需要用編程語言去處理現(xiàn)實生活中的各種數(shù)據(jù),而各種數(shù)據(jù)又是存儲在哪里的呢?答案就是變量,變量不是什么高大尚的東西,它就是一個裝東西的盒子把它說塑料袋也不為過。變量的本質就是在內存中開辟一塊存放數(shù)據(jù)的空間。類似的我們酒店的房間,一個房間就可以看做一個變量。

變量的使用

變量使用時分為兩個步驟,1.聲明變量,2.賦值。我們還是用同樣的思想去理解這兩個步驟,有一天我來一家酒店,我向老板說要開一間單人房,當我付錢后,老板給我房卡,這就意味著我在某一個期限內,可以入住那個房間。(我付錢,老板給卡,相當于聲明),我入住之后,空房間有人了相當于賦值。

接下來看看JS中的變量的使用

1.聲明
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script>
		var age;
		</script>
	</head>
	<body>
	</body>
</html>
  • var 是js的一個關鍵字,用來聲明變量(variable變量的意思),使用該關鍵字聲明變量后,計算機自動為變量分配內存空間

  • age程序員定義的變量名,我們要通過變量名來訪問內存中分配的空間

2.賦值
var age=19; //給age這個變量賦值為19
  • =用來把右邊的值給左邊的變量空間,這就是賦值

  • 變量值是程序員保存到空間變量里的值

3.二個語法小細節(jié)

更新變量:一個變量被重新賦值后,它原來的值就會被覆蓋,變量值以最后一次賦的值為準

var age=18;
age=19;//最后的結果為19.因為18被19覆蓋了

同時聲明多個變量:只需寫一個var ,然后變量名之間用英文逗號隔開

var age,number,average;

聲明變量的特殊情況

特殊一

		var sex;只聲明,不賦值,程序也不知道是啥,所以結果是 undefined (未定義的)
		console.log(sex);

特殊二

	console.log(sex); 不賦值,不聲明,直接使用某個變量會報錯

特殊三

qq=90;
console.log(qq); 不聲明直接賦值直接用,不會報錯!??!
這就很離譜,但是在javaScript就是對的,因為它太自由了。

變量的命名規(guī)范

  • 有字母(AZ,az),下劃線_,美元符號$組成,如userName

  • 嚴格區(qū)分大小寫。var app;和var App;是兩個變量

  • 不能以數(shù)字開頭,如12age則是錯誤的

  • 不能是關鍵字,保留字,例如:var ,for ,while.

  • 變量名必須有意義,要做到見名知意

  • 遵循駝峰命名法:首字母大寫,后面的單詞首字母需要大寫。如:myName

  • 推薦翻譯網(wǎng)站:有道,或者直接百度

為什么需要數(shù)據(jù)類型?

編程語言是用來處理現(xiàn)實生活中的問題,我們在現(xiàn)實世界中要處理各種各樣的數(shù)據(jù),其中就有整數(shù),小數(shù),文字等等,對應的在編程語言也有整數(shù),浮點數(shù),字符。在計算機中不同類型的數(shù)據(jù)所占的儲存空間也是不一樣的,為了方便把數(shù)據(jù)分為所需內存大小不同的數(shù)據(jù),充分的利用儲存空間,于是就定義了不同的數(shù)據(jù)類型。簡單的來說,數(shù)據(jù)類型就是數(shù)據(jù)的類別型號,就是對數(shù)據(jù)分類。如姓名,“葉秋涵”,年齡18,這些數(shù)據(jù)的類型的就是不一樣的。

變量的數(shù)據(jù)類型

變量是用來儲存值的所在處,它們都有其名字和類型,變量的數(shù)據(jù)類型決定了如何將代表這些值的位儲存到計算機的內存中,javaScript是一種弱類型或者說動態(tài)語言,這意味著不用提前聲明變量的

類型,程序在執(zhí)行過程中會自動。

var age=10;          //這是一個數(shù)字型
var name='葉秋涵';      //這是一個字符串

在代碼的運行過程中,變量的數(shù)據(jù)類型是由js引擎根據(jù)=右邊變量值的數(shù)據(jù)類型來判斷的,運行完畢之后,變量就確定了數(shù)據(jù)類型

?js擁有動態(tài)類型,同時意味著相同的變量可以作不同的類型

var x=6;      //x為數(shù)字
var x='嗶哩嗶哩';  //x為字符串

簡單數(shù)據(jù)類型(基本數(shù)據(jù)類型)

js中的簡單數(shù)據(jù)類型及其說明

簡單數(shù)據(jù)類型說明默認值
Number數(shù)字型,包括整數(shù)值和浮點數(shù)值,如12,0.20220
Boolean布爾值是類型,如true,false,等價于1和0false
String字符串類型,如"葉秋涵",注意在js中字符串都帶引號“”
Undefinedvar a; 聲明變量a但是沒有給值,此時a=undefinedundefined
Nullvar a=null; 聲明a變量為空值null
數(shù)字型

1.數(shù)字型進制

最常見的進制有二進制,八進制,十進制,十六進制

//1.八進制數(shù)字序列范圍0~7
var num1=07; //對應十進制的7
var num2=019; //對應十進制的19
var num3=08  //對應十進制的8
//2.十六進制數(shù)字序列范圍:0~9以及A~F
var num=0xA;

現(xiàn)在我們只要記住,在js中八進制前面加0,十六進制前面加0x

2.數(shù)字型范圍

js中數(shù)值的最大值和最小值

	alert(Number.MAX_SAFE_INTEGER);//9007199254740991
	alert(Number.MIN_VALUE);//5e-324

3.數(shù)字型三個特殊值

	alert(Infinity);//Infinity
	alert(-Infinity);//-Infinity
	alert(NaN);//NaN
  • Infinity,代表無窮大,大于任何值

  • -infinity,代表無窮小,小于任何值

  • NaN, Not a number,代表一個非數(shù)值

字符串型 String

字符串型可以是引號中的任意文本,其語法是單引號**&rsquo;'和雙引號""**

			var srtAge = '18';
			var strName = '葉秋涵';
			var srtFood = '我愛垃圾食品';
			//常見錯誤
			var srtNum2 = 11; //報錯,沒有引號,會被認為是js代碼,但是js沒有這些語法

因為在HTML標簽中里面的屬性使用的是雙引號,js這里我們更推薦使用單引號

字符串引號嵌套

js可以用單引號嵌套雙引號,或者用雙引號嵌套單引號(外雙內單,內單外雙)

var strMsy = '我是"程序員"蕭寒';
			console.log(strMsy)
			var strMsy2 = "我是'程序員'蕭寒";
			console.log(strMsy2);
			//常見錯誤
			var badQuotes = "What on earth?"';
			console.log(strMsy2);

結果如下

JavaScript的變量與數(shù)據(jù)類型是什么

JavaScript的變量與數(shù)據(jù)類型是什么

字符串轉義符

類似HTML里面的特殊字符,字符串中也有特殊字符,我們稱為轉義符

轉義符都是由\開頭,常用的轉義字符及其說明如下

轉義符解釋說明
\n換行符,n是newline的意思
\ \斜杠\
\ &rsquo;單引號
\ *雙引號
\ttab縮進
\b空格 ,b是blank的意思

布爾型Boolean

布爾類型有兩個值,true和false,其中true表示真,而false表示假

布爾型和數(shù)字型相加的時候,true的值為1,false的值為0

		console.log(true+1);//2
		console.log(false+0);//0

Undefined和Null

一個聲明后沒有被賦值的變量會默認有一個默認值undefined(如果進行相加或者相連時,注意結果)

var variable;
			console.log(variable);
			console.log('你好'+variable);
			console.log(11+variable);//+起連接作用
			console.log(true+variable);

結果如下

JavaScript的變量與數(shù)據(jù)類型是什么

一個變量給null值,里面儲存的值為空,就是啥也沒有

	var vari=null;
			console.log('你好'+vari);
			console.log(11+vari);
			console.log(true+vari);

結果如下

JavaScript的變量與數(shù)據(jù)類型是什么

什么是數(shù)據(jù)類型的轉換

使用表單,prompt獲取過來的數(shù)據(jù)默認值是字符串類型,此時就不能進行簡單的加法運算,而是需要轉換變量的數(shù)據(jù)類型,簡單來說,就是把一種數(shù)據(jù)類型轉換成另一種數(shù)據(jù)類型。

三種常用的轉換方式

  • 轉換為字符類型

  • 轉換為數(shù)字型

  • 轉換為布爾型

1.轉換為字符串
方式說明案例
toString()轉換為字符串var num=1; alert(num.toString());
String()強制轉換轉換為字符串var num=1; alert(String(num));
加號拼接字符串和字符串拼接的結果是字符串var num=1; alert(num+“我是字符串”);
  • toString()和String()使用放方式一樣

  • 三種轉換方式,前面兩種了解,第三種轉換為常用,也成為隱形轉換

2.轉換為數(shù)字型(重點)

(一)利用js提供的函數(shù)

js提供了parseInt()和parseFloat()兩個轉換函數(shù)。前者把值轉換成整數(shù),后者把值轉換成浮點數(shù)。

看看代碼就明白了

		var age=12;
		console.log(age);
		//利用parseInt()將值轉換為整數(shù)
		console.log(parseInt(age));
		console.log(parseInt('3.12'));//取整
		console.log(parseInt('3.89'));//取整
		console.log(parseInt('10px'));
		console.log(parseInt('rem120px'))//NaN
		//利用parseFloat()將值轉換為整數(shù)
		console.log(parseFloat('3.14'));//3.14
		console.log(parseFloat('120px'));//120會去掉px這個單位
		console.log(parseFloat('rem102px'));//NaN js引擎讀到rem的時候,無法識別,直接判為空

(二)強制轉換 Number()轉換函數(shù)

		var str='123';
		console.log(Number(str));//123
		console.log(Number('12'));//12

(三)js的隱形轉換(- * /) 注意沒有+,+起拼接作用

		console.log('12'-0);//12
		console.log('122'+1);//1221
		console.log('123'*123);//15129
		console.log('123'/123);//1
轉化為布爾型
方式說明案例
Boolean()函數(shù)其它類型轉換為布爾值Boolean(&lsquo;true&rsquo;)
  • 代表空,否定的值會被轉換為false,如&rsquo;&rsquo;,0,NaN,null,undefined

  • 其余值都會轉換為true

		console.log('');//false
		console.log(0);//false
		console.log(NaN);//false
		console.log(null);//false
		console.log(undefined);//false
		console.log('小白');//true
		console.log(12);//true

關于JavaScript的變量與數(shù)據(jù)類型是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI