js學習 第二篇資料型別
二、資料型別 ———萬物皆物件
2.1、字串
-
正常字元創我們使用 單引號 或者雙引號 包裹
-
注意轉義字元 \
\u**** // Unicode字元 \x** //ACSII字元
-
多行字串編寫
//tab上面 esc鍵下面 var msg = ` asdasi safasf asfs`;
-
模板字串
let name = "zhansagn"; let age = 3; let msg = `nihao,${name}`;
-
字串長度
str.length
-
字串的可變性,不可變
-
大小寫轉換
//轉化為大寫 str.toLocaleUpperCase() //轉化為小寫 str.toLocaleLowerCase() //str是不變的 因為字串的不可變 呼叫的是方法並非屬性
-
str.indexOf(‘t’)
-
substring() 左閉右開 start<=index<end
//從第一個字串擷取到最後一個字串 str.substring(1) //從1<=index<4 str.substring(1,4)
2.2、陣列
Array可以包含任意的資料型別
var arr = [1,2,3,4]
-
長度
arr.length;
**注意:**假如給arr.length賦值,陣列大小就會發生變化,如果賦值過小,元素就會丟失
-
indexOf() 通過元素獲得下標索引
arr.indexOf(1)
如果有相同的元素,取的是下標小的哪一個
-
slice()擷取Array的一部分 返回一個新的陣列 類似於String中的subString
//從第一個擷取到最後一個 arr.slice(1) //從1<=index<4 arr.slice(1,4)
-
push(),pop() 從尾部新增 或者彈出
//從尾部壓入一個或多個元素 arr.push() //從尾部彈出一個元素 arr.pop()
-
unshift() shift()從頭部新增 或者彈出
//從頭部新增一個或者多個 arr.unshift() //從頭部彈出一個元素 arr.shift()
-
sort()
arr.sort()
-
元素翻轉reverse()
arr.reverse()
-
拼接 concat() 原陣列不變 返回一個新的陣列
arr.concat(另一個陣列)
-
連線符 join() 不改變原陣列 返回一個新的字串
arr.join(原陣列的元素間的連線符)
-
多維陣列
avc = [[1,2],[3,4],[1,3]]; avc[1][0] 3
2.3、物件
若干個鍵值對
var 物件名 = {
屬性名:屬性值,
屬性名:屬性值,
屬性名:屬性值,
。。。。
}
JS中物件,{。。。}表示一個物件,鍵值對描述屬性XXX:XXX,多個屬性之間用逗號隔開,最後一個屬性不加逗號!
JavaScript中的所有的鍵都是字串,值是任意物件
-
物件賦值
物件名.屬性名 = 新值
-
使用一個不存在的物件屬性,不會報錯 會報undefined
-
動態的刪減屬性
delete 物件名.屬性名
-
動態的新增屬性 直接給新的屬性新增值即可
物件名.新屬性名 = 值
-
判斷屬性值是否在這個物件中
'屬性名' in 物件名 還可以找到它父類的
-
判斷一個屬性是否是這個物件自身攜帶的
物件名.hasOwnProperty('屬性名')
2.4、流程控制
if 判斷
if (判斷條件1) {
}else if(判斷條件2){
}else {}
迴圈
- while 先判斷 再進行迴圈體
while (迴圈條件) {
迴圈體
}
- for
for (let i = 0; 判斷條件; i++) {
迴圈體
}
-
for of
for(var num of 需遍歷的物件) { 迴圈體 }
-
do while 先執行迴圈體 在進行判斷
do {
迴圈體
}while (迴圈條件)
-
forEach
-
forEach() 方法用於呼叫陣列的每個元素,並將元素傳遞給回撥函式。
注意: forEach() 對於空陣列是不會執行回撥函式的。
-
//當前元素是必需的,其他的都是可選的
//thisValue: 傳遞給函式的值一般用 "this" 值。如果這個引數為空, "undefined" 會傳遞給 "this" 值
array.forEach(function(當前元素, 當前元素的索引值, 當前元素的陣列物件), thisValue){
執行的語序
})
-
for …in
-
for…in 語句用於對陣列或者物件的屬性進行迴圈操作。
for … in 迴圈中的程式碼每執行一次,就會對陣列的元素或者物件的屬性進行一次操作。
-
//“變數”用來指定變數,指定的變數可以是陣列元素,也可以是物件的屬性。
//變數為陣列的索引 物件的屬性名
for (變數 in 物件)
{
在此執行程式碼
}
2.5、Map和Set
**Map:**鍵值對儲存
var map = new Map([['tom',100],['jack',90],['zahngsan',16]]);
var value = map.get('tom');
map.set('admin', 1563);
console.log(map);
**Set:**無序不重複的集合
2.6、itreator
遍歷陣列
var arr = [3, 4, 5];
for(var num of arr) {
console.log(num);
}
遍歷Map
var map = new Map([['tom', 156], ['jack', 45],['saf',12]]);
for (let x of map) {
console.log(x);
}
遍歷Set
var set = new Set([556,454,64]);
for (let x of set) {
console.log(x);
}
相關文章
- js學習之路3: 資料型別JS資料型別
- SSIS 資料型別 第二篇:變數的資料型別資料型別變數
- PLSQL學習——資料型別SQL資料型別
- 深入學習JavaScript資料型別JavaScript資料型別
- TypeScript學習(一)—— 資料型別TypeScript資料型別
- c#資料型別學習C#資料型別
- js資料型別之基本資料型別和引用資料型別JS資料型別
- JavaScript學習總結(六)資料型別和JSON格式JavaScript資料型別JSON
- js資料型別JS資料型別
- js型別測試學習JS型別
- 資料型別 - Go 學習記錄資料型別Go
- Python學習之資料型別Python資料型別
- JavaScript學習之資料型別(1)JavaScript資料型別
- sql學習(mysql)(1)資料型別MySql資料型別
- MySQL學習筆記--資料型別MySql筆記資料型別
- JavaScript學習筆記---資料型別JavaScript筆記資料型別
- Swift學習——A Swift Tour 資料型別Swift資料型別
- Mysql資料庫學習(二):資料型別(數值型別 日期和時間型別 字串型別)MySql資料庫資料型別字串
- JS的資料型別JS資料型別
- js資料型別--objectJS資料型別Object
- js--資料型別JS資料型別
- Python學習教程:基本資料型別Python資料型別
- 第二週學習--基本資料型別資料型別
- Python 學習筆記——資料型別Python筆記資料型別
- Python學習 —— 內建資料型別Python資料型別
- PHP基本語法學習 [資料型別]PHP資料型別
- PLSQL學習-【4複合資料型別】SQL資料型別
- Redis學習手冊(List資料型別)Redis資料型別
- Redis學習手冊(Hashes資料型別)Redis資料型別
- Redis學習手冊(Set資料型別)Redis資料型別
- MySQL學習筆記12:資料型別MySql筆記資料型別
- PostgreSQL學習手冊(常用資料型別)SQL資料型別
- JS--js的資料型別JS資料型別
- 一個 JSer 的 Dart 學習日誌(五):基本資料型別JSDart資料型別
- Python3學習(基本資料型別-集合-字典-基本資料型別總結)Python資料型別
- JS裡的資料型別JS資料型別
- JS 資料型別總結JS資料型別
- js判斷資料型別JS資料型別