JS全解(一) 语法

时间:2021-2-20 作者:admin

JavaScript语法

学习方式:取其精华、去其糟粕、只讲变态。

前言:
由于ES3,ES5比较垃圾,而新的JS版本永远支持旧版本,所以ES6一半垃一半好,学习时要取其精华、去其糟粕。
为啥叫只讲变态呢,因为常态的东西一般都不会错,记住容易错的,不就学会了吗?面试考的就是变态的。
  1. 表达式和语句
  2. 标识符的规则
  3. if else语句
  4. switch语句
  5. 问号冒号表达式
  6. 短路逻辑
  7. while for语句
  8. break continue
  9. lable

1. 表达式和语句

表达式(取值)、语句(改变环境)

  • 变量指的是在程序中保存数据的一个容器
  • 变量是计算机内存中存储数据的标识符,根据变量名称可以获取到内存中存储的数据
  • 也就是说,我们向内存中存储了一个数据,然后要给这个数据起一个名字,为了是我们以后再次找到他
  • 语法: var 变量名 = 值
// 定义一个变量
var num;
​
// 给一个变量赋值
num = 100;
​
// 定义一个变量的同时给其赋值
var num2 = 200;

变态: return 后不能加回车

2. 标识符的规则

变态: 取名字用的符号,反正不能是 数字开头

3. if else语句 需要 === 3个等于

变态:如果if下面有2个语句,只管到下面第一个语句

4. switch语句

5. 问号冒号表达式(最简单的if else

6. 短路逻辑 &&

如果前面为真 ,就求后面的。

下面有2道题,大家不知道答案可以打开控制太去试试:

A题: 1 && 2 的值是 (2)

  • 1
  • 2
  • trueC

B题 : 0 && 2 的值是(0)

  1. 0
  2. 2
  3. false

变态:他的值大部分都不是 true和false

7. while for语句

  • while循环的语法和if非常相似,几乎完全一样,但区别是,只要给定条件的结果是true,那花括号中的代码就会反复执行下去:
  • for循环和while循环是类似的,事实上它是while循环的一种变体,一种更紧凑的形式而已。
//   while
var num = 1;

while(num < 10) {

alert(num);

num++;

}
//  for
var i;

for (i = 1; i < 10; i++) {

alert(i);

}

8. break

break语句和continue语句都具有跳转作用,可以让代码不按既有的顺序执行。
break语句用于跳出代码块或循环。

var i = 0;

while(i < 100) {
  console.log('i 当前为:' + i);
  i++;
  if (i === 10) break;
}

上面代码只会执行10次循环,一旦i等于10,就会跳出循环。
for循环也可以使用break语句跳出循环。

for (var i = 0; i < 5; i++) {
  console.log(i);
  if (i === 3)
    break;
}
// 0
// 1
// 2
// 3

上面代码执行到i等于3,就会跳出循环。
continue语句用于立即终止本轮循环,返回循环结构的头部,开始下一轮循环。

var i = 0;

while (i < 100){
  i++;
  if (i % 2 === 0) continue;
  console.log('i 当前为:' + i);
}

9. lable

JavaScript 语言允许,语句的前面有标签(label),相当于定位符,用于跳转到程序的任意位置,标签的格式如下。
label:
语句
标签可以是任意的标识符,但不能是保留字,语句部分可以是任意语句。
标签通常与break语句和continue语句配合使用,跳出特定的循环。

top:
  for (var i = 0; i < 3; i++){
    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

上面代码为一个双重循环区块,break命令后面加上了top标签(注意,top不用加引号),满足条件时,直接跳出双层循环。如果break语句后面不使用标签,则只能跳出内层循环,进入下一次的外层循环。
标签也可以用于跳出代码块。

foo: {
  console.log(1);
  break foo;
  console.log('本行不会输出');
}
console.log(2);
// 1
// 2

上面代码执行到break foo,就会跳出区块。
continue语句也可以与标签配合使用。

top:
  for (var i = 0; i < 3; i++){
    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

上面代码中,continue命令后面有一个标签名,满足条件时,会跳过当前循环,直接进入下一轮外层循环。如果continue语句后面不使用标签,则只能进入下一轮的内层循环。

本文参考了知乎、CSDN、网道JavaScript 的一些知识,有描述不准确的地方还希望大多多家指正!!!

声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。