JS基本语法

148 阅读4分钟

1、表达式

表达式是一组代码的集合,它返回一个值。

比如:表达式:a=7。该表达式使用=运算符将值7赋予变量x,这个表达式自己的值等于7。

表达式:3+4。该表达式使用+运算符把3和4加到一起但并没有把结果(7)赋值给一个变量。

2、语句

var a=1;是一个语句

计算机程序是由计算机“执行”的一系列“指令”。 在编程语言中,这些编程指令被称为语句。 JavaScript 程序就是一系列的编程语句。

以分号结束语句不是必需的,通常建议是加上去。如果有分号分隔,允许在同一行写多条语句:

a = 5; b = 6; c = a + b;

3、JS标识符的命名规则

在 JavaScript 中,标识符命名规范和 Java 以及其他许多语言的命名规范相同,主要规范如下:

1、标识符第一个字符必须是字母、下划线_或美元符号$或是中文,其后的字符可以是字母、数字或下划线、美元符号、中文;

2、自定义的标识符不能和 JavaScript 中的关键字及保留字同名,但可以包含关键字或保留字。

3、标识符不能包含空格;

4、标识符不能包含+、-、@、#等特殊字符;

5、由多个单词组成的复合标识符命名主要有两种方式:

① 是使用下划线连接各个单词,每个单词全部小写,例如:use_name

② 是使用驼峰式,其中又分大驼峰和小驼峰。大驼峰的格式是每个单词的首字母大写,其余字母小写,例如:UseName;小驼峰的格式是第一个单词全部小写,第二单词开始的每个单词首字母大写,其余字母小写,例如:useName

合法标识符示例:

user_name
userName
_name
$name
ab
ab123
用户名

非法标识符示例:

1a     //第一个字符为数字
a b    //标识符包含空格
a@b    //标识符包含特殊符号
while  //关键字

4、if...else...

在if( )else结构中,当特定条件为真时,即今当表达式为真时,才会执行程序中的语句1;仅当表达式为假时执行语句2。

if(表达式){
  语句1 
}else{
  语句2
}

if( )和else结构可以使用else if( )进一步扩展:

if(表达式){
  语句1 
}else if{
  语句2
}else{
  语句3
}

如果代码块只有一个语句,无需把代码块放在花括号里。如果不加花括号,代码仍然能够正确运行。然而,如果不加花括号,阅读代码的人可能不明其意,因此最好加上。

5、while循环

while语句相当于重复执行的if()。为while()提供一个表达式,在表达式的结果为真时执行代码块。与if()不同的是,每次执行完代码块后while()都会检查那个表达式。如果仍未真再次执行代码块;当表达式为假时,执行代码块之后的语句。 示例:

var i=1;
while(i<=5)}{
  console.log(i);
  i++;
}

打印结果如下:

1
2
3
4
5

6、for循环

for()结构也能重复多次执行相同语句。

示例:

for(var i=1;i<=5;i++){
  console.log(i);
}

打印结果如下:

1
2
3
4
5

for()的用法比while()复杂一些。此时,圆括号内不是一个测试表达式,而是三个表达式,它们之间使用分好隔开:初始化表达式,测试表达式和迭代表达式。for()结构表达式初始化和迭代表达式更简洁。

执行过程需要注意的是:

1、先执行初始化表达式,初始化表达式只执行一遍;

2、接着执行测试表达式,如果结果为真。执行循环体;

3、执行完循环体后运行迭代表达式;

4、再重新执行测试表达式,继续判断结果是否为真。若为真继续执行循环体继续上述步骤,否则执行for()之后的语句。

7、Break 和 Continue

break 语句“跳出”循环。

continue 语句“跳过”循环中的一个迭代。

Break语句

break 语句也可用于跳出循环。

break 语句会中断循环,并继续执行循环之后的代码(如果有)

break 语句在多重循环当中会中断嵌套的最近的一个循环

break示例:

for(var i=1;i<=5;i++){
  if (i === 3) { break; }
  console.log(i);
}
continue 语句

continue 语句中断(循环中)的一个迭代,如果发生指定的条件。然后继续循环中的下一个迭代。

示例跳过值 3 :

for(var i=1;i<=5;i++){
  if (i === 3) { continue; }
  console.log(i);
}

8、label

标记语句

标记就是在一条语句前面加个可以引用的标识符。

常见的使用场景为:

可使用一个标签来唯一标记一个循环,然后使用 break 或 continue 语句来指示程序是否中断循环或继续执行。

示例:在for循环中使用带标记的continue语句

var i, j;

    loop1:
    for (i = 0; i < 3; i++) {      //第一个for语句被标记为 "loop1"
       loop2:
       for (j = 0; j < 3; j++) {   //第二个for语句被标记为 "loop2"
          if (i === 1 && j === 1) {
             continue loop1;
          }
          console.log('i = ' + i + ', j = ' + j);
       }
    }

// Output is:
//   "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"

注:在严格模式中,你不能使用 “let” 作为标签名称。它会抛出一个 SyntaxError(因为 let 是一个保留的标识符)。