JS语法

170 阅读2分钟

JS:JavaScript,其标准是ECMAscript,也就是ES。 ES是纸上的标准,JS是在浏览器上的实现。目前,使用最广泛的还要属ES6。

一、先明确一些概念

(一) 容易混的表达式与语句,值与函数值

  • 表达式与语句

    • 表达式一般有值,语句可能有也可能没有
    • 语句一般会改变环境(声明、赋值)
  • 值与返回值

    • 只有函数才有返回值
  • 举个栗子

    • 1+2表达式的 为3
    • add(1,2)表达式的值为函数的返回值
    • console.log表达式的值为函数本身
    • console.log(3)表达式的值为“undefined”,3只是打印出来的值
    • var a = 1 是一个语句

(二)一些书写规则

  • 大小写敏感
  • 大部分空格没有实际意义,只要不影响断句
  • 加回车大部分时候也不影响,但是return后面不能加回车

(三)标识符

  • 第一个字符可以是 Unicode字母 / $ / _ / 中文 ,一般下划线最多用两个
  • 标识符一般用在变量名

(四)注释

  • 注释一般有两种
// 单行注释
/*
多行
注释*/
  • 注释不要写废话
  • 好的注释
    • 采坑注解
    • 特殊需求
    • 遇到bug以及解决方法

二、一些yongtu了的语句

(一) 区块block

简单来说就是用花括号把一些代码包起来

{
    let a = 1
    let b = 2
}

下面的这些语句经常用到

(二)条件语句

<一>if语句

if (表达式){
    语句
}else if (表达式){
    语句
}else{
    语句
}
function fn(){
    if (表达式){
      return 表达式
    }if (表达式){
      return 表达式
    }
    return表达式
}

<二>switch语句

switch(表达式){
    case "语句1":
    case "语句2"break;
    case "语句:3":
    break;
    default:
}

<三>问号冒号表达式

a>b ? a : b //a>b吗,如果是,就选a,不是,就选b

<四>短路逻辑

  • &&
&& B真 B假
A真 B B
A假 A A

取第一个假值

  • || 与&&相反,取第一个真值

(三)循环语句

<一>while循环

  • while循环:判断表达式的真假,真执行语句,再判断;假,跳过 共四部分,声明变量,判断,循环体,变化,缺一不可
while(表达式){
 语句 
}

不要写死循环,例如

var a=0.1;
while(a!=1){
    console.log(a)
    a=a+0.1
}  //浮点数不精确,永远不会等于1,
  • do...while循环

<二>for循环(while循环的简写)

for(语句1;表达式2;语句3){
    循环体
}

先执行语句1(初始化) ,判断表达式2: 真:执行循环体,执行语句3(变化) 假:退出循环

<三>break和continue

  • break跳出所有循环
for(var i=0; i<10; i++){
    if(i%2===1){
        break
    }else{
        console.log(i)
    }
}

  • continue跳出当前循环
for(var i=0; i<10; i++){
    if(i%2===1){
        continue
    }else{
        console.log(i)
    }
}

<四>label语句