JavaScript 标签语句
在学习一个新东西的时候,常常难于理解一个新的概念 ,大概是因为它的名字迷惑了我们。初次看到这个标签语句时就让我非常的不解,想着这JavaScript怎么又和HTML的标签搞到一块去了,于是就让我煞费苦心的搜啊,终于皇天不负有心人,接下来就让我们看看这个JavaScript 标签语句到底是个什么NB的东西。
首先来看看标签语句的概念是什么:
简单来说,JavaScript 标签语句就是被标签化的语句。就如同给一个特别难记的东西起一个好记的别名取代它一样,比如说一个美国佬的名字叫“ 尼古拉斯. 特斯拉佗罗夫斯基唐纳德拉夫斯基xxx",别说记住他的名字了,就是听见就难免让人头疼,由于不想死太多的脑细胞,于是就给他来个好记的别名叫”小黑“,那么这个”小黑“就相当于我们所说的标签语句。
语法结构 :
labelName:statement
(1). labelName:标签名称,用于指代对应的语句 。
(2). statement:此语句将被标签化,也就是被当作名为labelName的标签。
另外, 可以标签化任何一个语句或者语句块 , 如果后面有多个语句,那么处于第一位的语句被标签化,其他的被忽略 。
常见实例:
最为常见的对标签语句的应用是配合break或者continue。
let num = 0;
outFor: for (let i = 0; i < 10; i++) {
for (let j = 0; j < 10; j++) {
if (i == 3 && j == 3) {
break outFor;
}
num++;
}
}
console.log(num); // 输出33
看上面代码:
(1)为外层for语句用一个标签outFor
,以后就可以用它指代外层for循环。
(2)当i与j都等于3的时候,break outFor
,也就是跳出整个外层for循环。
(3)那么所有的循环都被终止,然后打印出num值,等于33。
再来看下面的代码加强对标签语句的理解
outFor: for (let i = 0; i < 3; i++) {
console.log("外层循环:" + i);
for (let j = 0; j < 5; j++) {
if (j == 3) {
continue outFor;
}
console.log("内部循环:" + j);
}
}
console.log("退出循环");
打印结果是这样的:
label.html:11 外层循环:0
label.html:16 内部循环:0
label.html:16 内部循环:1
label.html:16 内部循环:2
label.html:11 外层循环:1
label.html:16 内部循环:0
label.html:16 内部循环:1
label.html:16 内部循环:2
label.html:11 外层循环:2
label.html:16 内部循环:0
label.html:16 内部循环:1
label.html:16 内部循环:2
label.html:19 退出循环
由代码可以看出:
(1)当j
等于三的时候,执行continue outFor
,也就是跳过外层for循环当前循环,进行下一次。那么永远也不会打印出内部循环:3
以及后面更大的数字。
由此可以看出:这个东西还是挺简单、使用起来还是挺方便的,只是它的名字看上去有点吓人而已。