JavaScript-基础(二)

来源:互联网 发布:sql合并两个字段 编辑:程序博客网 时间:2024/06/12 00:32

1.条件判断

JavaScript使用if () { ... } else { ... }来进行条件判断。

多行条件判断:

var age = 3;if (age >= 18) {    alert('adult');} else if (age >= 6) {    alert('teenager');} else {    alert('kid');}

2.循环

for循环
JavaScript的循环有两种,一种是for循环,通过初始条件、结束条件和递增条件来循环执行语句块:

var x = 0;var i;for (i=1; i<=10000; i++) {    x = x + i;}x; // 50005000

while循环
while循环只有一个判断条件,条件满足,就不断循环,条件不满足时则退出循环。

var x = 0;var n = 99;while (n > 0) {    x = x + n;    n = n - 2;}x; // 2500

3.Map和Set

Map
Map是一组键值对的结构,具有极快的查找速度。
用JavaScript写一个Map如下:

var m = new Map([['Michael', 95], ['Bob', 75], ['Tracy', 85]]);m.get('Michael'); // 95

初始化Map需要一个二维数组,或者直接初始化一个空MapMap具有以下方法:

var m = new Map(); // 空Mapm.set('Adam', 67); // 添加新的key-valuem.set('Bob', 59);m.has('Adam'); // 是否存在key 'Adam': truem.get('Adam'); // 67m.delete('Adam'); // 删除key 'Adam'm.get('Adam'); // undefined

一个键对应一个值,重复赋值会覆盖前面的值。

Set
SetMap类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在Set中,没有重复的key。
要创建一个Set,需要提供一个Array作为输入,或者直接创建一个空Set

var s1 = new Set(); // 空Setvar s2 = new Set([1, 2, 3]); // 含1, 2, 3//重复的元素会被过滤

add方法可以添加元素,delete方法可以删除元素。

iterable

遍历Array可以采用下标循环,遍历MapSet就无法使用下标。为了统一集合类型,ES6标准引入了新的iterable类型,ArrayMapSet都属于iterable类型。

具有iterable类型的集合可以通过新的for ... of循环来遍历。

for ... of循环遍历集合,用法如下:

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    alert(x);}for (var x of s) { // 遍历Set    alert(x);}for (var x of m) { // 遍历Map    alert(x[0] + '=' + x[1]);}
0 0
原创粉丝点击