gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区

站長資訊網
最全最豐富的資訊網站

詳細解析JavaScript中的六大基本數據類型

本篇文章給大家帶來了JavaScript中關于六大基本數據類型的相關知識,希望對大家有幫助。

詳細解析JavaScript中的六大基本數據類型

一、區分大小寫

在JavaScript中,所有的一切(變量、函數和操作符)都區分大小寫。這也就意味著,變量名test和變量名Test分別表示兩個不同的變量。

二、標識符

所謂的表示標識符,就是指變量、函數名和操作符,或者函數的參數。標志符的格式規則如下:

1、第一個字符必須是一個字符、下劃線(_)或者一個美元符號($);

2、其他的字符可以是字母、下劃線、美元符號和數字;

按照慣例,JavaScript的標識符采用小駝峰書寫格式,也就是打開一個字母小寫,剩下的單詞的首字母大寫。例如:firstChirld、myCar;

當然,標識符采用小駝峰書寫格式不是強制要求,但是可以便于我們理解代碼,在書寫時盡量用小駝峰書寫格式,便于別人理解你的代碼。

三、注釋

JavaScript中的注釋方法分為單行注釋和多行注釋:
單行注釋:

//這是一個單行注釋

多行注釋:

/* *這是一個 *多行注釋 */

四、語句

在JavaScript中,語句都是以一個分號結尾;如果省略分號,則由解釋器去確定結尾。如下例所示:

var sum = a + b			//即使沒有分號也是有效語句——不推薦 var diff = a - b;		//有效語句——推薦

五、變量

JavaScript中的變量類型是弱類型的,所謂弱類型就是可以用來保存任何類型的數據。換句話說,每個變量僅僅是一個用于保存值的占位符而已。
定義變量時用var關鍵字,后面跟變量名(即標識符)。如下所示:

var  message;

JavaScript也支持直接初始化變量,因此在定義變量的同時就可以設置變量的值。如下所示:

var message = "Hello world!";

有一點必須注意,即用var關鍵字定義的變量將成為定義該變量的作用域中的局部變量。也就是說,如果函數中使用var定義一個變量,那么這個變量在函數運行結束后就會被銷毀。例如:

function test(){ 	var message = "Hello";		//局部變量 } test(); console.log(message);		//錯誤!

出現錯誤的原因是,變量message是在函數test()中使用var定義的。當函數被調用時,就會創建變量并為其賦值。而在此之后,這個變量會立即銷毀,因此,例子中的下一行代碼就會導致錯誤。不過,可以像下面這樣省略關鍵字var,從而創建一個全局變量:

function  test(){ 	message = "Hello";			//全局變量 } test(); console.log(message);			//"Hello"

在這里省略了關鍵字var,message就變成了全局變量。這樣,只要調用一次test()函數,這個變量就被定義了,全局變量被定以后,就可以在函數外部的任何地方都可以被訪問到。
雖然省略關鍵字var可以定義全局變量,但是不建議這樣做,因為在局部作用域中定義的全局變量很難維護;

數據類型

JavaScript中有幾種簡單數據類型(也稱為基本數據類型):Undefined、Null、Boolean、Number和String。還要一種復雜類型——Object,Object本質是一組無序的名值對組成。JavaScript中不支持任何創建自定義的類型的機制,而所有值都是這6種數據類型之一。

typeof操作符

由于JavaScript是弱類型的,因此需要有一種手段來檢測給定變量的數據類型——typeof就是一個負責檢測給定變量的數據類型的操作符。對一個值使用typeof操作符可能返回下列某個字符串:

  • “undefined”——如果這個值未定義;

  • “boolean”——如果這個值是布爾類型;

  • “string”——如果這個值是字符串;

  • “number”——如果這個值是數字;

  • “object”——如果這個值是對象或null;

  • “function”——如果這個值是函數;

下面是使用typeof操作符的幾個例子:

var message = "hello"; console.log(typeof message);			//"string" console.log(typeof(message));			//"string" console.log(typeof 95);					//"number"

typeof操作符的操作數可以是變量,也可以是數值字面量。注意,typeof不是函數,因此此例中的圓括號盡管可以使用,但是不是必需的。
在JavaScript中,函數是一種對象,不是一種數據類型,因此使用typeof來區分函數和其他對象是必要的。

Undefined類型

undefined類型只有一個值,即特殊的undefined。在使用var聲明變量但對其未加以初始化時,這個變量的值就是undefined。例如:

var message; console.log(message  == undefined);		//true var message1 = "undefined"; console.log(message1 == undefined);			//true

然而,令人困惑的一點是:對未初始化的變量執行typeof操作符會返回undefined值,而對未聲明的比變量執行typeof操作符同樣也會返回undefined值。來看下面的例子:

var message;			//這個變量聲明之后默認取得了undefined值 //下面這個變量并沒有聲明 //var age; console.log(typeof message);		//"undefined" console.log(typeof age);			//"undefined"

為初始化的變量和為聲明的變量都返回了undefined,這個結果有其邏輯上的合理性。因為這兩種變量從技術角度上有本質的區別,但實際上無論對那種變量也不可能執行真正的操作,

Null類型

Null類型是第二個只有一個值得類型,這個特殊的值是null。從邏輯的角度來看,null值表示一個對象的空指針,而這也正是使用typeof操作符的檢測null值時會返回“object”的原因,如下面的例子所示:

var message= null;		 console.log(message);		//"object"

如果定義的對象將來用來保存對象,那么最好將這個變量初始化為null而不是其他的值。這樣一來,只要直接檢查null值就可以直接知道相應的變量是否已經保存了一個對象的引用,如下面的例子:

if(message != null){ 	//對message進行一系列的操作 }

實際上,undefined的值是派生自null值得,所以對它們進行相等性測試的時候要返回true:

console.log(null == undefined);		//true

在這里,位于null和undefined之間的相等操作符(==)總是返回true。盡管null和undefined有這樣的關系,但它們的的用途完全不同。如上面所述,無論在什么情況下,都沒有必要把一個變量顯示的表示為undefined,可是同樣的規則對null卻不適用。換句話說,只有保存對象的變量還沒有真正的保存對象,就應該在明確地表示將該變量保存為null值。這樣做不僅可以體現null值作為空指針的慣例,而且也有助于進一步的區分null和undefined。

Boolean類型

Boolean類型是JavaScript中使用最多的一種類型,該類型只有兩個字面值:true和false。這兩個值與數字值不是一回事,因此true不一定等于1,而false也不一定等于0。以下是為變量賦值的例子:

var first = true; var second = false;

需要注意的是,boolean類型的兩個值區分大小寫。也就是說True和true、False和false不是一回事。
True和False(以及其他混合大小形式)只是標識符,不是boolean值。
雖然boolean值只有兩個值,但是JavaScript所有類型的值都有與這兩個boolean值等價的值。要將一個值轉換為相應的Boolean值,可以調用Boolean()函數。例如:

	var message = "Hello world!"; 	var messageAsBoolean = Boolean(message); 	console.log(messageAsBoolean);		//true

可以對任何類型的值調用Boolean()函數,而且總會返回一個boolean值。至于返回的是true還是false取決于要轉換的實際類型及其實際值。下表給出了各種數據類型對其轉換的相應規則:

數據類型 轉換為true的值 轉換為false的值
Boolean true false
String 任何非空字符串 “”(空字符串)
Number 任何非零數字值(包括無窮大) 0和NaN
Object 任何對象 null
Undefined n/a undefined

Number類型

在JavaScript中number類型定義了不同的數值字面量格式。例如:

	var  intNumber = 55;		//十進制整數 	var octalNum1 = 070;		//八進制的56 	var octaNum2 = 079;			//無效的八進制數,解析為79 	var octaNum3 =  08;			//無效的八進制數,解析為8 	var hexNum1 = 0xA;			//十六進制的10 	var hexNum2 = 0x1f;			//十六進制的31

在進行算術計算時,所有八進制和十六進制表示的數值都會轉換成十進制數值。

NaN

NaN即非數值,是一個特殊的數值。這個數用于表示一個本來要返回數值的操作數未返回數值的情況(這樣就不會拋出錯誤了)。NaN本身有兩個特點:
首先,任何涉及NaN的操作(例如NaN/10)都會返回NaN,這個特點在多步計算中有可能導致問題。
其次,NaN與任何值都不相等,包括NaN本身。例如:

console.log(NaN ==NaN );		//false

String類型

string類型用于表示零或多個Unicode字符組成的字符序列,即字符串。字符串可以由雙引號(")或單引號(’)表示,因此下面兩種寫法都是有效的:

var firstName = "王文正"; var secondName = "王彬";

雙引號開頭的必須以雙引號結尾,而當引號開頭的必須以單引號結尾。下面這種會導致語法錯誤:

var name = "王彬';		//語法錯誤
字符字面量

String類型中包含了一些特殊字面量,也叫轉義序列,用于表示非打印字符,或者有其他的用途的字符。這些字符字面量如下表所示:

字面量 含義
n 換行
t 制表
b 退格
r 回車
f 進紙
斜杠
單引號
" 雙引號
xnn 以十六進制代碼nn表示一個字符
unnn 以十六進制代碼nnn表示一個Unicode字符
字符串的特點

JavaScript中的字符串是不可變的,也就是說,字符串一旦創建,它的值就是不可更改的。要更改某個變量中保存的字符串,首先要銷毀原來的字符串,然后用另一個包含新值得字符串填充變量,例如:

var lang = "java"; lang = lang + "script"; console.log(lang);		//javascript

Object類型

JavaScript中的對象是一組數據和功能的集合。對象可以通過執行new操作符后跟要創建的對象類型名稱來創建。而創建Object類型的實例并為其添加屬性或方法,就可以創建自定義對象。如下所示:

var o = new Object(); var  o = new Object;		//有效,但是不推薦這種做法;
Object的每個實例都具有以下下列屬性和方法:
  • constructor:保存著用于創建當期那對象的函數。

  • hasOwnProperty(propertyName):用于檢查給定的屬性在當前對象實例中(而不是實際的原型中)是否存在。

  • isPrototypeOf(object):用于檢查傳入的對象那個是否是當前對象的原型。

  • propertyIsEnumerable(propertyName):用于檢查給定的屬性是否能夠使用for-in語句

  • toLocaleString():返回對象的字符串表示,該字符串與執行環境的地區對應

  • valueOf():返回對象的字符串、數值或布爾值表示。通常與toString()方法的返回值相同

  • toString():返回對象的字符串表示

  • 由于在JavaScript中Object是所有對象的基礎,因此所有對象都具有這些基本的屬性和方法。

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区
日韩在线不卡一区| 亚洲熟妇无码一区二区三区导航| 日韩毛片在线免费看| 欧美激情精品久久久久久小说| 精品久久久久av| 午夜免费福利网站| 午夜免费视频网站| 精品无码一区二区三区在线| 一本久道中文无码字幕av| xxww在线观看| 伊人色在线观看| 超碰免费在线公开| 国产黄色片免费在线观看| 欧美日韩中文在线视频| xxx国产在线观看| 草草草视频在线观看| 亚洲欧美另类动漫| 人妻少妇精品久久| 日韩成人精品视频在线观看| 日本阿v视频在线观看| 亚洲xxxx2d动漫1| 大肉大捧一进一出好爽视频| 国产精品一区在线免费观看| 日韩在线第三页| 精品视频在线观看一区| 超碰在线人人爱| 精品一区二区中文字幕| 国产视频九色蝌蚪| 黄色大片中文字幕| 无码人妻丰满熟妇区96| 国产美女主播在线播放| 国产欧美久久久久| 激情深爱综合网| 成人免费在线小视频| 成人黄色av片| 手机看片福利日韩| 亚洲欧美国产日韩综合| 国产探花在线观看视频| 欧洲精品视频在线| 黄在线观看网站| www.超碰97.com| 国产一区二区视频播放| 精品视频无码一区二区三区| 欧美国产日韩另类 | 凹凸国产熟女精品视频| 日韩久久一级片| 性猛交ⅹ×××乱大交| 99精品视频国产| 国产一区二区在线视频播放| 免费av不卡在线| 日韩精品aaa| 国产精品一线二线三线| 日本丰满少妇xxxx| 日本女人高潮视频| www.亚洲高清| 黄频视频在线观看| www.桃色.com| 性欧美18一19内谢| 国产婷婷一区二区三区| 少妇无码av无码专区在线观看| 天天碰免费视频| 成人性免费视频| 一级黄色片播放| 超碰成人在线播放| 91极品视频在线观看| 国产手机免费视频| 国产一级爱c视频| avav在线播放| 久久最新免费视频| 91网址在线观看精品| 在线观看免费黄色片| 视频区 图片区 小说区| wwwwwxxxx日本| 久久精品视频在线观看免费| 中文字幕55页| 日韩不卡视频一区二区| 精品人妻少妇一区二区| 亚洲人精品午夜射精日韩| 日韩av一二三四区| 中文字幕在线观看第三页| 欧美婷婷精品激情| 欧美在线a视频| 日韩精品一区二区免费| 久久久久久人妻一区二区三区| 97视频在线免费播放| 一级片视频免费观看| 中文字幕亚洲影院| 黄色一级片国产| 亚洲xxx在线观看| 欧洲精品一区二区三区久久| av在线无限看| 欧美一级视频免费看| 亚洲国产午夜精品| 欧美老熟妇喷水| 黄色特一级视频| 咪咪色在线视频| 香港三级韩国三级日本三级| 国产乱码一区二区三区四区| 国产成人在线免费看| 久久精品国产精品亚洲精品色 | 成年人视频在线免费| 久青草视频在线播放| 在线播放黄色av| 国产又爽又黄ai换脸| 咪咪色在线视频| 青春草在线视频免费观看| 日日噜噜夜夜狠狠| 亚洲精品高清无码视频| a√天堂在线观看| 日日摸日日碰夜夜爽av| 又粗又黑又大的吊av| 激情综合网婷婷| 日本美女高潮视频| 亚欧精品在线视频| 26uuu成人| av网站手机在线观看| 91高清国产视频| 中文字幕剧情在线观看| 日韩欧美中文视频| 九一免费在线观看| 五月婷婷之婷婷| 日韩不卡视频一区二区| 成人在线免费观看av| www.99热这里只有精品| av网址在线观看免费| 三上悠亚在线一区| 成人一级生活片| 国产探花在线看| 欧美中文字幕在线观看视频 | 欧美精品自拍视频| 亚洲一级片免费| 男女视频网站在线观看| theporn国产精品| 欧美精品无码一区二区三区| 熟女视频一区二区三区| 国产视频在线视频| 欧美变态另类刺激| 一本二本三本亚洲码 | 国产精品久久久久久久久电影网| 亚洲综合日韩欧美| 亚洲成熟丰满熟妇高潮xxxxx| av动漫在线免费观看| 亚洲自拍偷拍一区二区三区| 亚洲美女性囗交| 亚洲一区二区福利视频| 一区二区在线免费看| 亚洲视频在线观看一区二区三区| 男人操女人免费| 免费看污黄网站| 黄色小视频免费网站| 国产精品视频分类| 女女同性女同一区二区三区按摩| 中文字幕 欧美日韩| 成人性做爰片免费视频| 99视频精品全部免费看| 糖心vlog在线免费观看| 国产毛片久久久久久国产毛片| 亚洲激情免费视频| 欧美s码亚洲码精品m码| 鲁一鲁一鲁一鲁一av| 国产又粗又猛大又黄又爽| 国产一区二区三区在线免费| 国产极品尤物在线| 最新av免费在线观看| 日韩精品在线视频免费观看| 91好吊色国产欧美日韩在线| 黄色三级视频片| a在线视频观看| 潘金莲一级淫片aaaaaa播放1| 国产精品国三级国产av| 香港日本韩国三级网站| 国产成人艳妇aa视频在线 | 91极品视频在线观看| 99在线免费视频观看| 爱情岛论坛亚洲首页入口章节| 亚洲精品天堂成人片av在线播放 | 日韩伦理在线免费观看| 日本在线观看视频一区| 中文字幕有码av| 中文字幕无码精品亚洲35| 日本福利视频网站| 欧美另类videos| 激情六月天婷婷| 国产一区二区片| 日本wwwcom| 国产91在线视频观看| 日韩在线观看a| 日韩中文字幕三区| 97成人在线免费视频| 日本a视频在线观看| 欧美性久久久久| 成人免费在线观看视频网站| 日本va中文字幕| www.cao超碰| 国内精品视频一区二区三区| 国产一区二区三区播放| 91动漫在线看| 男人天堂成人在线| 国产精品探花在线播放| 成年人深夜视频|