日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

JS的数据类型分类以及用法,没有这些基础,学不好js

發布時間:2024/1/8 javascript 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JS的数据类型分类以及用法,没有这些基础,学不好js 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

JS有多種數據類型。數據類型就好比我們學習詞匯的時候,詞匯也有多種類型一樣,比如,動詞、名詞、形容詞等等。

JS數據類型包括:字符串值、數值、布爾值、數組、對象。

  • 字符串值

字符串值用于存儲和操作文本。字符串是引號中的零個或多個字符,引號可以是雙引號也可以是單引號。字符可以是任意字符。比如:

"Hello Word"
"123"
"我是劉小妞"
""
''

雙引號和單引號可以嵌套。比如:

var a = " 我是 '劉小妞' " var b = ' "劉小妞" 的棲息地 '

我們可以輸出一下上面的兩個值,完整代碼如下:

<div id="testA"></div> <div id="testB"></div><script> var a = " 我是 '劉小妞' " var b = ' "劉小妞" 的棲息地 'document.getElementById("testA").innerHTML = a; document.getElementById("testB").innerHTML = b; </script>

但是,單引號里不能嵌套單引號,雙引號里不能嵌套雙引號。比如下面這樣寫就會出錯:

" 我是 "劉小妞" "
' '劉小妞' 的棲息地 '

如果我們遇到必須在雙引號里嵌套雙引號、單引號里必須嵌套單引號這種情況怎么辦?

我們可以在里面的引號用轉移字符。

轉移字符是一個反斜杠 " \ "。寫個例子:

" 我是 \"劉小妞\" " 輸出結果是:我是"劉小妞"

單引號也類似。比如:

' \'劉小妞\' 的棲息地 ' 輸出結果是:'劉小妞'的棲息地

那如果想輸出反斜杠怎么辦? 連著寫兩個反斜杠就可以了。

如何知道一個字符串的長度呢? 字符串有一個自帶屬性:length

它是這樣用的:

<div id="test"></div><script> var a = "我是劉小妞"; var b = a.length;document.getElementById("test").innerHTML = b; </script>
  • JS的數值

JS只有一種數值類型,即64位浮點數。它不區分整型、浮點型。超大或者超小的數可以用科學計數法來寫,比如:

var a = 123e6; //123000000 var b = 123e-6; //0.000123var c = 3; var d = 3.00;var e = c===d //e的值是true

如果不使用科學計數法,整數會被精確到15位,小數最大數是17位。

介紹幾個特殊的值:NaN、Infinity、十六進制。

NaN:Not a Number(不是一個數字)。它屬于JS保留詞,表示某個數不是合法數。它的數據類型是數值。

這個值經常會在報錯里看到。比如,一個字符串和一個數值做乘除減法運算。

var a = "劉小妞" * 100; //a的值是NaN。

但是,如果字符串里是個數字,在做乘除減運算的時候,JS會強制把數字的字符串轉換成數值,比如:

var a = "100" * 10; //a的值是1000。

如果在運算過程中,有一個值是NaN,那么結果也是NaN。比如:

var a = NaN + 100; //a的值是NaN。

但是,如果是加法運算符,一邊是字符串,一邊是NaN,那結果會是字符串拼接。比如:

var a = NaN + '100'; //a的值是NaN100。

字符串很牛的,只要是加號,誰和它挨著,它就把誰轉成字符串。

有一個全局函數:isNaN() ,可以確定某個值是否是數值。比如:

var a = "劉小妞" * 100; var b = isNaN(a); //b的值true。

Infinity/-Infinity:JS計算數時,超出最大數范圍返回的值。

除以0也會生成Infinity或者-Infinity。比如:

var a = 100 / 0; //a的值是Infinity var b = -100 / 0; //b的值是-Infinity

十六進制:前綴為0x的數值常常被解釋為十六進制。比如:

var a = 0xFF; //a的值是255

在寫數值的時候,不要以0開頭,比如(07)等等。因為一些JS版本會把前綴為0的解釋成八進制。不要給自己找麻煩。當然,進制之間是可以相互轉換的,這個我們知道就行,不經常用。

  • JS的布爾值

布爾值只有兩個值:true和false。

布爾值經常用在條件判斷中。

true是真,即條件成立;false是假,即條件不成立。

寫個小例子:

var a = 1,b = 2; var c = a>b; //c的值是false
  • JS的數組

什么是數組?

數組就是一組數,這是我自己定義的。

數組是一種特殊的變量,它能夠一次存放一個以上的值。通過索引號來訪問這些值。

它的格式如下:

[item1,item2,……]

一個中括號,里面可以有多個值,多個值用逗號分隔。

里面值的類型可以是任意類型,字符串、數值、布爾值、數組、對象都可以。一個數組里可以有多個類型的值。

索引號也叫下標號。它是從0開始的整數字。

寫個例子:

var a = ["北京","河北","天津"]; var b = a[0]; //b的值是:北京

也可以定義空數組,比如:

var a = [];

可以通過給數組賦值改變數組的元素的值,比如:

<div id="test"></div><script> var a = ["北京","河北","天津"]; a[0] = "上海";document.getElementById("test").innerHTML = a; </script>

數組a的第一個值就變成上海了。

-JS的對象

對象和數組很像。其實,數組是一種特殊類型的對象。

對象也是存儲多個值的,只不過,對象里的值不叫值,叫屬性。和我們學HTML里的屬性類似。

對象是用大括號定義的。里面可以有多個屬性,多個屬性用逗號分隔,屬性是由名稱:值的形式寫的。名稱和值用冒號分隔。它的格式如下:

{name1:value1,name2:value2,……}

屬性值可以是任意數據類型。

也可以定義空對象,比如:

var a = {};

獲取對象的值,是通過訪問屬性名稱來實現獲取相應的值,有兩種寫法。如下:

var people = {eye:"black",height:180,weight:"70kg" }

我們定義了一個people對象。我們想獲取eye的值,可以有下面兩種寫法:

var a = people.eye; var b = people['eye'];

用點(.)或者中括號[]都可以。

是不是和數組很像?定義的時候,把中括號換成了大括號,訪問的時候,下標由數字換成了屬性名。

對象不光有屬性,還有方法。

結合我們生活中的例子,其實,對象隨處可見。

比如,一個人就可以是一個對象,一輛車也可以是一個對象。

屬性一般是對象自有的靜態屬性。比如人的身高、體重、鼻子、眼睛等等。
方法一般是對象的動態行為。比如人的跑、跳等等。

本質上,所有的數據類型都是屬于對象,他們都有對應的屬性和方法。
什么時候用數組,什么時候用對象呢?
一般需要指定屬性名的時候,用對象,否則用數組。

undefined:在JS中,沒有值的變量,其值是undefined。比如:

<div id="test"></div><script> var a; document.getElementById("test").innerHTML = a; </script>

div標簽里將顯示undefined。

undefined類型就是undefined。

注意一點,空字符串不是undefined,空字符串的值是空,類型是字符串。比如:

var a = ""; //a的值是空。

null:就是nothing,不存在的事物。但是,它的數據類型是對象。可以理解成一個不存在的對象。

null一般是我們在調取后臺接口的時候,如果后臺傳過來的是個空,前端一般會顯示成null。

undefined和null的值是相等的,但是類型不一樣。

像null、undefined、NaN這種值,一般是在程序報錯的時候才會出現,正常寫程序的時候,一般用不到它們。當報錯的時候,知道錯誤原因就可以了。

  • JS的typeof運算符

我們可以通過typeof運算符來確定JS變量的類型。

typeof "Bill" //返回 "string" typeof 3.14 //返回 "number" typeof NaN //返回 "number" typeof false //返回 "boolean" typeof [1,2,3,4] //返回 "object" typeof undefined //返回 "undefined" typeof null //返回 "object" typeof {name:'Bill', age:62} //返回 "object"

數組返回的是object,因為在JS中,數組是對象。
null也算是一種特殊的對象.

其他更多的技術文章,大家可以搜索微信公眾號“劉小妞的棲息地”或者掃描下面的圖片閱讀,如果有寫的不好的地方,歡迎大家指教。也希望這些能夠幫助到大家。

總結

以上是生活随笔為你收集整理的JS的数据类型分类以及用法,没有这些基础,学不好js的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 一级片大片 | 狠狠艹狠狠干 | 国产美女在线观看 | 日韩黄色网页 | 欧美日韩精品一区二区三区视频播放 | 中文字幕 视频一区 | 欧美大片在线看免费观看 | 欧美一级免费大片 | 黄色av电影网址 | 国产91在线高潮白浆在线观看 | 中文理论片 | 亚洲午夜久久久久久久久红桃 | 日韩黄色精品 | 欧美a久久 | 青青色在线视频 | 国产免费啪啪 | 久久在线中文字幕 | jizzjizz欧美69巨大 | 午夜一级黄色片 | 葵司有码中文字幕二三区 | 国产亚洲精品成人a | 操操av| 亚洲人妻一区二区 | 国产精品无码一区二区三区免费 | 91伊人| 国产鲁鲁视频在线观看特色 | 帮我拍拍漫画全集免费观看 | 人妻熟女一区二区三区 | 中文字幕一区在线播放 | 一本久草 | 虫族全黄h全肉污文 | 青青草久久爱 | av影片在线看 | 午夜肉体高潮免费毛片 | 高潮流白浆在线观看 | 韩国明星乱淫(高h)小说 | 日本免费一区二区三区四区 | 欧美人成在线 | 国产高清不卡一区 | 高潮毛片 | 亚洲一级片av | av一区二区免费 | 国产精品腿扒开做爽爽爽挤奶网站 | 久久精品国产99国产精品 | julia一区二区三区中文字幕 | 亚洲黄色免费观看 | 欧美黄色短片 | 色站在线 | 合欢视频在线观看 | 欧美一卡二卡三卡四卡 | 岛国av免费 | av中文在线观看 | 青青草视频在线观看免费 | 国内自拍视频在线观看 | 日韩乱论| 日韩高清片 | 精品美女www爽爽爽视频 | 美女污污网站 | 国产原创在线播放 | 熟女自拍一区 | 精品一区二区三区四区视频 | 五月天色综合 | 无人在线观看的免费高清视频 | 在线看的av | 亚洲天堂中文在线 | 在线无 | 日本免费一区二区三区视频 | 91网站免费在线观看 | 国产草草影院 | xxxx国产片| 绯色av一区二区三区高清 | 国产成人a v | 性欧美一级 | 欧洲av无码放荡人妇网站 | aaa毛片视频| 久久久久久久久久久久久女过产乱 | 99伊人网 | 夜夜高潮夜夜爽 | 国产精品6 | www,四虎 | 伊人伊网| 中文字幕成人在线 | 日本www高清视频 | 日本中文字幕在线不卡 | 黄色片毛片| 精品国产鲁一鲁一区二区张丽 | 三叶草欧洲码在线 | 欧美成人免费一级人片100 | 日韩欧美一区二区区 | 亚洲国产欧洲 | 中国一级免费毛片 | 艳妇乳肉豪妇荡乳xxx | 自拍偷拍小视频 | 免费网站观看www在线观 | 亚洲 欧美 自拍偷拍 | 91精品国产福利在线观看 | 日日射视频 | 久久久久99精品国产片 | 在线观看中文字幕一区二区 |