JavaScript 运算符参考

  • JavaScript 运算符

    JavaScript运算符用于分配值,比较值,执行算术运算等。
  • JavaScript算术运算符

    算术运算符用于在变量和/或值之间执行算术运算。鉴于y = 5,下表解释了算术运算符:
    操作符 描述 例子 y的结果 x的结果 尝试
    + 加成 x = y + 2 y = 5 x = 7 尝试
    - 减法 x = y - 2 y = 5 x = 3 尝试
    * 乘法 x = y * 2 y = 5 x = 10 尝试
    / 除法 x = y / 2 y = 5 x = 2.5 尝试
    % 取模 (取余数) x = y % 2 y = 5 x = 1 尝试
    ++ 递增 x = ++y x = y++ y = 6 y = 6 x = 6 x = 5 尝试
    -- 递减 x = --y x = y-- y = 4 y = 4 x = 4 x = 5 尝试
    有关算术运算符的教程,请阅读我们的JavaScript算术教程
  • JavaScript赋值运算符

    赋值运算符用于为JavaScript变量赋值。鉴于x = 10y = 5,下表解释了赋值运算符:
    操作符 例子 等价于 x的结果 尝试
    = x = y x = y x = 5 尝试
    += x += y x = x + y x = 15 尝试
    -= x -= y x = x - y x = 5 尝试
    *= x *= y x = x * y x = 50 尝试
    /= x /= y x = x / y x = 2 尝试
    %= x %= y x = x % y x = 0 尝试
    有关赋值运算符的教程,请阅读我们的JavaScript赋值教程
  • JavaScript字符串运算符

    +运算符和+=运算符也可用于连接(添加)字符串。鉴于text1="Good"text2="Morning", 和text3="",下面的表格阐述字符串连接符:
    操作符 例子 text1 text2 text3 尝试
    + text3 = text1 + text2 "Good " "Morning" "Good Morning" 尝试
    += text1 += text2 "Good Morning" "Morning" "" 尝试
  • 比较运算符

    在逻辑语句中使用比较运算符来确定变量或值之间的相等或差异。鉴于x = 5,下表解释了比较运算符:
    操作符 描述 比较 结果 尝试
    == 相等 x == 8 x == 5 false true 尝试
    === 值和类型相等 x === "5" x === 5 false true 尝试
    != 不等 x != 8 true 尝试
    !== 值或类型不等 x !== "5" x !== 5 true false 尝试
    > 大于 x > 8 false 尝试
    < 小于 x < 8 true 尝试
    >= 大于或等于 x >= 8 false 尝试
    <= 小于或等于 x <= 8 true 尝试
    有关比较运算符的教程,请阅读我们的JavaScript比较教程
  • 条件(三元)运算符

    条件运算符根据条件为变量赋值。
    语法 例子 尝试
    变量 = (条件) ? 值1 : 值2 voteable = (age < 18) ? "太年轻":"够老了"; 尝试
    示例说明:如果变量“age”是一个低于18的值,变量“voteable”的值将是“太年轻”,否则voteable的值将是“够老了”。
  • 逻辑运算符

    逻辑运算符用于确定变量或值之间的逻辑。鉴于x = 6y = 3,下表解释了逻辑运算符:
    操作符 描述 例子
    && (x < 10 && y > 1) 为 true 尝试
    || (x === 5 || y === 5) 为 false 尝试
    ! !(x === y) 为 true 尝试
  • JavaScript按位运算符

    位操作符使用32位数字。操作中的任何数字操作数都将转换为32位数。结果将转换回JavaScript数字。
    操作符 描述 例子 等价 结果 十进制
    & 按位与 x = 5 & 1 0101 & 0001 0001 1
    | 按位或 x = 5 | 1 0101 | 0001 0101 5
    ~ 按位非 x = ~ 5 ~0101 1010 10
    ^ 按位异或 x = 5 ^ 1 0101 ^ 0001 0100 4
    << 左移 x = 5 << 1 0101 << 1 1010 10
    >> 右移 x = 5 >> 1 0101 >> 1 0010 2
    上面的示例使用4位无符号示例。但JavaScript使用32位有符号数字
    因此,在JavaScript中,~5不会返回10.它将返回-6。
    ~00000000000000000000000000000101将返回11111111111111111111111111111010
  • typeof操作符

    typeof运算操作者返回一个变量,对象,函数或表达的类型:
    typeof "John"                 // 返回 string 
    typeof 3.14                   // 返回 number
    typeof NaN                    // 返回 number
    typeof false                  // 返回 boolean
    typeof [1, 2, 3, 4]           // 返回 object
    typeof {name:'John', age:34}  // 返回 object
    typeof new Date()             // 返回 object
    typeof function () {}         // 返回 function
    typeof myCar                  // 返回 undefined (如果 myCar 没有声明)
    typeof null                   // 返回 object
    尝试一下
    请注意:
    • NaN的数据类型是数字
    • 数组的数据类型是object
    • 日期的数据类型是对象
    • null的数据类型是object
    • 未定义变量的数据类型undefined
    您不能使用typeof来定义JavaScript对象是否是数组(或日期)。
  • del操作符

    del操作符删除一个对象的属性:
    var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
    delete person.age;   // 删除 person["age"];
    尝试一下
    delete运算符删除属性的值和属性本身。删除后,该属性在再次添加之前无法使用。delete运算符旨在用于对象属性。它对变量或函数没有影响。
    注意:不应在预定义的JavaScript对象属性上使用delete运算符。它可能会导致应用程序崩溃
  • in操作符

    in操作符果指定的属性是在指定的对象,否则为false运算符返回true:
    // 数组
    var cars = ["Saab", "Volvo", "BMW"];
    "Saab" in cars          // 返回 false (指定索引号而不是值)
    0 in cars               // 返回 true
    1 in cars               // 返回 true
    4 in cars               // 返回 false (does not exist)
    "length" in cars        // 返回 true  (length is an Array property)
    
    // 对象
    var person = {firstName:"John", lastName:"Doe", age:50};
    "firstName" in person   // 返回 true
    "age" in person         // 返回 true
    
    // 预定义的对象
    "PI" in Math            // 返回 true
    "NaN" in Number         // 返回 true
    "length" in String      // 返回 true
    尝试一下
  • instanceof操作符

    instanceof操作符如果指定的对象是指定对象的实例返回true:
    var cars = ["Saab", "Volvo", "BMW"];
    
    cars instanceof Array;          // 返回 true
    cars instanceof Object;         // 返回 true
    cars instanceof String;         // 返回 false
    cars instanceof Number;         // 返回 false
    尝试一下
  • void操作符

    void操作符计算表达式并返回undefined。此运算符通常用于获取未定义的原始值,使用“void(0)”(在不使用返回值的情况下计算表达式时很有用)。
    <a href="javascript:void(0);">
      Useless link
    </a>
    
    <a href="javascript:void(document.body.style.backgroundColor='red');">
      单击我将body的背景颜色更改为红色
    </a>
    尝试一下