标签:基本 break ... js 语法 语句 while 循环 var
文章总结搬运自:https://wangdoc.com/javascript/basic/grammar.html
1、语句(statement)与表达式(expression)
- 语句:无返回值,以分号结尾
- 表达式:必有返回值
- 空格:没有实际意义但不建议
- 回车:return不能加回车
2、标识符(identifier)
标识符(identifier)指的是用来识别各种值的合法名称。命名规则如下:
- 第一个字符,可以是任意 Unicode 字母(包括英文字母和其他语言的字母),以及美元符号($)和下划线(_)。
- 第二个字符及后面的字符,除了 Unicode 字母、美元符号和下划线,还可以用数字0-9。
- 不合法的标识符:* + -
- 不能用作标识符的保留字:arguments、break、case、catch、class、const、continue、debugger、default、delete、do、else、enum、eval、export、extends、false、finally、for、function、if、implements、import、in、instanceof、interface、let、new、null、package、private、protected、public、return、static、super、switch、this、throw、true、try、typeof、var、void、while、with、yield。
3、注释
- //:单行注释
- /* */ 多行注释
4、区块(block)
{ }
- 用来构成其他更复杂的语法结构,比如for、if、while、function
- 区块对var命令不构成单独的作用域,即区块外,var声明变量仍有效
5、条件语句
5.1、if
if(条件){
满足条件时,执行语句;不满足,跳出循环
}
eg:
if (m === 3) {
m += 1;
}
5.2、-if...else
if(条件){
满足条件时,执行的语句
}else{
不满足条件时,执行的语句
}
eg:
if (m === 0) {
// ...
} else if (m === 1) {
// ...
} else if (m === 2) {
// ...
} else {
// ...
}
5.3、swich
注意:break不能少
switch (fruit) {
case "banana":
// ...
break;
case "apple":
// ...
break;
default:
// ...
}
eg:
switch (x) {
case 1:
console.log('x 等于1');
break;
case 2:
console.log('x 等于2');
break;
default:
console.log('x 等于其他值');
}
5.4、三元运算符?:
(条件) ? 表达式1(条件为真执行) : 表达式2
eg:如果n可以被2整除,则a等于true,否则等于false
var a = (n % 2 === 0) ? true : false;
6、循环语句
6.1、while循环
while (条件) {
语句;
}
单语句可以省略{}
6.2、for循环
for (初始化表达式; 条件; 递增表达式) {
语句
}
- 初始化表达式(initialize):确定循环变量的初始值,只在循环开始时执行一次。
- 条件表达式(test):每轮循环开始时,都要执行这个条件表达式,只有值为真,才 继续进行循环。
- 递增表达式(increment):每轮循环的最后一个操作,通常用来递增循环变量
eg:
for(i=0;i<3;i++){
consonle.log(i)
}
打印内容: 0 1 2
for语句的三个部分(initialize、test、increment),可以省略任何一个,也可以全部省略,不过贸然省略会导致无线循环
6.3、do...while循环
do {
语句
} while (条件);
/*while后必须带分号*/
先运行一次循环体,然后判断循环条件。不管条件是否为真,do...while循环至少运行一次
6.4、break 语句和 continue 语句
- break: 跳出代码块或循环
- continue:立即终止本轮循环,返回循环结构的头部
eg:
var i = 0;
while (i < 100){
i++;
if (i % 2 === 0) continue;
/*如果i为偶数,则直接进入下一轮循环。*/
console.log('i 当前为:' + i);
}
- 注意:不带参数的break语句和continue语句都影响最近的循环
当
6.5、label(标签)
标签(label),相当于定位符,用于跳转到程序的任意位置.通常与break语句和continue语句配合使用,跳出特定的循环
label:
语句
eg:
//label与break配合使用
top:
for (var i = 0; i < 3; i++){
for (var j = 0; j < 3; j++){
//如果break语句后面不使用标签,则只能跳出内层循环,进入 for (var j = 0; j < 3; j++){}
if (i === 1 && j === 1) break top;
console.log('i=' + i + ', j=' + j);
}
}
// i=0, j=0
// i=0, j=1
// i=0, j=2
// i=1, j=0
// 1
// 2
//label与continue配合使用
top:
for (var i = 0; i < 3; i++){
for (var j = 0; j < 3; j++){
//如果continue语句后面不使用标签,则只能进入下一轮的内层循环,即for (var j = 0; j < 3; j++){}
if (i === 1 && j === 1) continue top;
console.log('i=' + i + ', j=' + j);
}
}
// i=0, j=0
// i=0, j=1
// i=0, j=2
// i=1, j=0
// i=2, j=0
// i=2, j=1
// i=2, j=2
//label跳出区块
foo: {
console.log(1);
break foo;
console.log('本行不会输出');
}
console.log(2);
//1
//2
标签:基本,break,...,js,语法,语句,while,循环,var 来源: https://www.cnblogs.com/kaqyin/p/15620427.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。