JavaScript 快速入门

JavaScript

1. 注释

  • 单行注释:以双斜杠//开头,直到行末的部分会被浏览器忽略。例如:

    // 这是单行注释
    
  • 多行注释:使用/**/包裹的内容会被浏览器忽略。例如:

    /*
    这是多行注释
    可以包含多行内容
    */
    
  • 注释的作用:注释是给人阅读的,用于解释代码的功能和逻辑,帮助理解和维护代码,浏览器在执行时会忽略它们。


2. 基础语法

  • 语句结束符:JavaScript 的语句以分号结束,但浏览器引擎会自动在语句末尾补充分号,因此分号不是强制要求的。不过,建议显式地使用分号以避免潜在问题。

    var x = 1;
    
  • 语句块:由花括号{}包裹的语句集合,用于组合多个语句,形成逻辑单元。例如:

    if (2 > 1) {
        x = 1;
        y = 2;
        z = 3;
    }
    
    • 嵌套结构{}可以嵌套使用,形成多层逻辑结构。例如:
      if (2 > 1) {
          x = 1;
          y = 2;
          z = 3;
          if (x < y) {
              z = 4;
          }
          if (x > y) {
              z = 5;
          }
      }
      
  • 缩进规则:花括号{}内的语句块通常使用缩进(通常是4个空格)来表示层次结构,便于阅读和理解代码。虽然缩进不是语法强制要求的,但它是良好的编码习惯。

  • 输出语句

    console.log('Hello, world'); // 输出内容到控制台
    

3. 数据类型

3.1 Number

  • Number 类型:JavaScript 不区分整数和浮点数,统一用 Number 表示。以下都是合法的 Number 类型:

    123; // 整数
    0.456; // 浮点数
    1.2345e3; // 科学计数法,等同于 1234.5
    -99; // 负数
    NaN; // Not a Number,表示无法计算的结果
    Infinity; // 表示无限大
    
  • Number 特性

    • 12.00 === 12:JavaScript 的 Number 不区分整数和浮点数。
    • 整数的最大安全范围是 ±2^53,而不是其他语言中的 ±2^63。超出范围可能导致精度丢失。
      console.log(Number.MAX_SAFE_INTEGER); // 9007199254740991
      console.log(Number.MAX_SAFE_INTEGER + 1); // 9007199254740992
      console.log(Number.MAX_SAFE_INTEGER + 2); // 9007199254740992(精度丢失)
      
  • 示例

    console.log(1 + 3); // 4
    console.log((1 + 3) * 3); // 12
    console.log(2 / 0); // Infinity
    console.log(0 / 0); // NaN
    console.log(10 % 3); // 1
    console.log(10.5 % 3); // 1.5
    
    var r = 1;
    var s = 3.14 * r * r;
    console.log(s); // 3.14
    

3.2 BigInt

  • 用途:用于表示超过 2^53 的大整数。
  • 表示方法:在整数后加 n,例如 9223372036854775808n
  • 创建方法
    var bi1 = 9223372036854775807n;
    var bi2 = BigInt(12345);
    var bi3 = BigInt("0x7fffffffffffffff");
    
  • 运算规则
    • 可以正常进行加减乘除等运算。
    • 运算结果仍然是 BigInt
    • 不能将 BigIntNumber 放在一起运算。
    console.log(bi1 + bi2); // 9223372036854788152n
    console.log(bi3); // 9223372036854775807n
    console.log(1234567n + 3456789n); // OK
    console.log(1234567n / 789n); // 1564n(除法结果仍为 BigInt)
    console.log(1234567n % 789n); // 571n
    console.log(1234567n + 3456789); // Uncaught TypeError: Cannot mix BigInt and other types
    

3.3 null 和 undefined

  • null
    • 表示“空”的值。
    • 0、空字符串 '' 不同,null 表示“空”,而 0 是数值,'' 表示长度为 0 的字符串。
  • undefined
    • 表示“未定义”。
    • 通常用于判断函数参数是否传递。
  • 区别
    • 区分 nullundefined 的意义不大,大多数情况下使用 null 更合适。

3.4 布尔值

  • 布尔值类型:只有 truefalse 两种值。
  • 直接表示
    true; // true值
    false; // false值
    
  • 布尔运算
    console.log(2 > 1); // true
    console.log(0 > 1); // false
    

4. 运算符

  • 逻辑与运算(&&

    • 所有值都为 true 时,结果为 true;否则为 false
    true && true; // true
    true && false; // false
    false && true && false; // false
    
  • 逻辑或运算(||

    • 只要有一个值为 true,结果为 true;否则为 false
    false || false; // false
    true || false; // true
    false || true || false; // true
    
  • 逻辑非运算(!

    • 单目运算符,将 true 转换为 false,将 false 转换为 true
    !true; // false
    !false; // true
    !(2 > 5); // true
    
  • 布尔值在条件判断中的应用

    var age = 15;
    if (age >= 18) {
        alert('adult');
    } else {
        alert('teenager');
    }
    
posted @ 2025-03-19 22:29  kyle_7Qc  阅读(16)  评论(0)    收藏  举报