第一天

js

數據類型

  1. Number,javascript不區(qū)分整數和浮點數;
    注意NAN(not a number)和Infinity(無窮數)
    NaN===NaN //false;NAN與所有其他值都不相等。
    唯一判斷NaN的方法是:isNaN(NaN);//true
    1/3===(1-2/3)//false;無限小數只能通過判斷闕值來判斷。
  2. 字符串,引號不是字符串的一部分,只是一種表示方式
  3. 布爾值,只有true和false倆個值。
  4. null和undefined
  5. 數組
    [],new Array();倆中方法創(chuàng)建數組。
  6. 對象
  7. 變量
  8. strict模式

字符串

  1. 字符串轉義\
  2. 多行字符串:es6中用.........來表示。
  3. 模板字符串:連接多個變量和字符串可以表示為:
`你好,${name},你今年${year}了`;
  1. 操作字符串
    toUpperCase ,toLowerCase , indexOf(搜索指定字符串出現的位置) , substring(start,end)
    以上方法不會改變原字符串
    split()按指定的字符將字符串分割為數組。

數組

1.javascript中的array包含多種數據類型的元素。
array.length獲取數組長度,當直接給array.length賦值會更改array的大小。
array可以直接通過索引來修改對應元素的值。
索引賦值超過數組長度,會更改數組長度。
2.操作數組方法

  • indexOf()搜索指定元素的索引。
  • slice(start,end)截取指定范圍的數組元素。不包含結束索引,只包含開始索引。不指定slice參數,則默認從頭到尾截取。
  • push,pop分別表示向數組末尾添加元素和刪除元素。
  • unshift,shift分別表示向數組頭插入第一個元素和刪除第一個元素。
  • sort排序,更改原數組。默認按照unicode排序,需指定回調函數。
  • reverse倒序數組,更改原數組。
  • splice增,刪,改數組。
  • concat連接倆個數組。不修改原數組。
  • join()將數組中的元素按指定的連接符號連接成字符串,不是字符串的元素強制轉換為字符串。

對象

  • 當屬性名含有特殊符號或空格時需要用' '引起來;
  • .訪問法和[]訪問法(變量)

循環(huán)

  1. for
  2. for in
for (var key in o) {
    console.log(key); // 'name', 'age', 'city'
}

由于array也是對象當用for in對數組遍歷會把索引當成屬性輸出索引,而得到的是字符串索引,并不是number。

for (var i in a) {
    console.log(i); // '0', '1', '2'
    console.log(a[i]); // 'A', 'B', 'C'
}
  1. while do-while

Map和Set(es6新增的數據類型)

javaScript的默認對象表示方式{}可以視為其他語言中的Map或Dictionary的數據結構,即一組鍵值對。但是對象的屬性即鍵必須是數組所以引入map和set

  1. Map:初始化一個空map或者需要一個二維數組。
    var map=new Map();
  • map.set();添加新的key-value值
  • map.has();是否存在鍵
  • map.get();獲取對應鍵的值
  • map.delete();刪除鍵
  1. Set(一組key集合,不存儲value值)
    :初始化一個空Set或者需啊要一個數組。
    var set=new Set();
  • set.add();添加一個鍵,可重復添加不過沒有效果。
  • set.delete();刪除一個鍵。

iterable

由于array可以使用下標循環(huán),而Set和Map沒有下標,所以es6引入iterable類型,array、Map、Set都屬于iterable類型。
該類型可以使用for-of來循環(huán)。

var a = ['A', 'B', 'C'];
var s = new Set(['A', 'B', 'C']);
var m = new Map([[1, 'x'], [2, 'y'], [3, 'z']]);
for (var x of a) { // 遍歷Array
    console.log(x);
}
for (var x of s) { // 遍歷Set
    console.log(x);
}
for (var x of m) { // 遍歷Map
    console.log(x[0] + '=' + x[1]);
}

for-in把name包括在內,而length不包括。

var a = ['A', 'B', 'C'];
a.name = 'Hello';
for (var x in a) {
    console.log(x); // '0', '1', '2', 'name'
}

for-of只循環(huán)集合本身的元素。

var a = ['A', 'B', 'C'];
a.name = 'Hello';
for (var x of a) {
    console.log(x); // '0', '1', '2',
}
**iterable內置forEach**
1. Set由于沒有索引所以前倆格元素均代表元素本身。
```var s = new Set(['A', 'B', 'C']);
s.forEach(function (element, sameElement, set) {
    console.log(element);
});
  1. Map的參數為value,key,map
m.forEach(function (value, key, map) {
    console.log(value);
});
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 第2章 基本語法 2.1 概述 基本句法和變量 語句 JavaScript程序的執(zhí)行單位為行(line),也就是一...
    悟名先生閱讀 4,565評論 0 13
  • 總結了一些開發(fā)中常用的函數: usleep() //函數延遲代碼執(zhí)行若干微秒。 unpack() //函數從二進制...
    ADL2022閱讀 546評論 0 3
  • PHP常用函數大全 usleep() 函數延遲代碼執(zhí)行若干微秒。 unpack() 函數從二進制字符串對數據進行解...
    上街買菜丶迷倒老太閱讀 1,502評論 0 20
  • 眾芳搖落動喧妍 風情縱傾盡留園 寒雪素裹秀丹姿 沉吟思牽伊人往 香魂忽作霧中云 淚眼問花花不語 落紅已飛外九天 ...
    臨風書雪閱讀 302評論 2 4
  • 今天讀了三個小故事,我以為這是為我量身定做的答案。A因為拖延錯過心儀的項目,我也曾因為拖延,因為自卑,錯過重...
    流風雪不回閱讀 268評論 0 1

友情鏈接更多精彩內容