JavaScript运算符有哪些及怎么使用

发布时间:2022-08-04 09:36:34 作者:iii
来源:亿速云 阅读:147

JavaScript运算符有哪些及怎么使用

JavaScript是一种广泛使用的编程语言,它提供了丰富的运算符来处理各种数据类型和操作。本文将详细介绍JavaScript中的运算符及其使用方法,帮助读者更好地理解和运用这些运算符。

1. 算术运算符

算术运算符用于执行基本的数学运算,如加、减、乘、除等。

1.1 加法运算符 (+)

加法运算符用于将两个数值相加,或者将字符串连接起来。

let a = 5;
let b = 3;
let sum = a + b; // 8

let str1 = "Hello";
let str2 = "World";
let result = str1 + " " + str2; // "Hello World"

1.2 减法运算符 (-)

减法运算符用于将两个数值相减。

let a = 10;
let b = 4;
let difference = a - b; // 6

1.3 乘法运算符 (*)

乘法运算符用于将两个数值相乘。

let a = 7;
let b = 6;
let product = a * b; // 42

1.4 除法运算符 (/)

除法运算符用于将两个数值相除。

let a = 20;
let b = 4;
let quotient = a / b; // 5

1.5 取余运算符 (%)

取余运算符用于计算两个数值相除后的余数。

let a = 17;
let b = 5;
let remainder = a % b; // 2

1.6 指数运算符 (**)

指数运算符用于计算一个数的幂。

let a = 2;
let b = 3;
let power = a ** b; // 8

1.7 自增运算符 (++)

自增运算符用于将变量的值增加1。

let a = 5;
a++; // a 现在是 6

1.8 自减运算符 (--)

自减运算符用于将变量的值减少1。

let a = 5;
a--; // a 现在是 4

2. 赋值运算符

赋值运算符用于将右侧的值赋给左侧的变量。

2.1 简单赋值运算符 (=)

简单赋值运算符用于将右侧的值赋给左侧的变量。

let a = 10;

2.2 加法赋值运算符 (+=)

加法赋值运算符用于将右侧的值加到左侧的变量上。

let a = 5;
a += 3; // a 现在是 8

2.3 减法赋值运算符 (-=)

减法赋值运算符用于将右侧的值从左侧的变量中减去。

let a = 10;
a -= 4; // a 现在是 6

2.4 乘法赋值运算符 (*=)

乘法赋值运算符用于将右侧的值与左侧的变量相乘。

let a = 7;
a *= 6; // a 现在是 42

2.5 除法赋值运算符 (/=)

除法赋值运算符用于将左侧的变量除以右侧的值。

let a = 20;
a /= 4; // a 现在是 5

2.6 取余赋值运算符 (%=)

取余赋值运算符用于将左侧的变量除以右侧的值后的余数赋给左侧的变量。

let a = 17;
a %= 5; // a 现在是 2

2.7 指数赋值运算符 (**=)

指数赋值运算符用于将左侧的变量的值提升到右侧的值的幂。

let a = 2;
a **= 3; // a 现在是 8

3. 比较运算符

比较运算符用于比较两个值,并返回一个布尔值(truefalse)。

3.1 相等运算符 (==)

相等运算符用于比较两个值是否相等,不考虑数据类型。

let a = 5;
let b = "5";
let result = a == b; // true

3.2 不等运算符 (!=)

不等运算符用于比较两个值是否不相等,不考虑数据类型。

let a = 5;
let b = "5";
let result = a != b; // false

3.3 严格相等运算符 (===)

严格相等运算符用于比较两个值是否相等,且数据类型必须相同。

let a = 5;
let b = "5";
let result = a === b; // false

3.4 严格不等运算符 (!==)

严格不等运算符用于比较两个值是否不相等,且数据类型必须相同。

let a = 5;
let b = "5";
let result = a !== b; // true

3.5 大于运算符 (>)

大于运算符用于比较左侧的值是否大于右侧的值。

let a = 10;
let b = 5;
let result = a > b; // true

3.6 小于运算符 (<)

小于运算符用于比较左侧的值是否小于右侧的值。

let a = 5;
let b = 10;
let result = a < b; // true

3.7 大于等于运算符 (>=)

大于等于运算符用于比较左侧的值是否大于或等于右侧的值。

let a = 10;
let b = 10;
let result = a >= b; // true

3.8 小于等于运算符 (<=)

小于等于运算符用于比较左侧的值是否小于或等于右侧的值。

let a = 5;
let b = 10;
let result = a <= b; // true

4. 逻辑运算符

逻辑运算符用于组合多个条件,并返回一个布尔值。

4.1 逻辑与运算符 (&&)

逻辑与运算符用于判断多个条件是否都为真。

let a = true;
let b = false;
let result = a && b; // false

4.2 逻辑或运算符 (||)

逻辑或运算符用于判断多个条件中是否至少有一个为真。

let a = true;
let b = false;
let result = a || b; // true

4.3 逻辑非运算符 (!)

逻辑非运算符用于反转条件的布尔值。

let a = true;
let result = !a; // false

5. 位运算符

位运算符用于对二进制数进行操作。

5.1 按位与运算符 (&)

按位与运算符用于对两个数的二进制表示进行按位与操作。

let a = 5; // 二进制 0101
let b = 3; // 二进制 0011
let result = a & b; // 1 (二进制 0001)

5.2 按位或运算符 (|)

按位或运算符用于对两个数的二进制表示进行按位或操作。

let a = 5; // 二进制 0101
let b = 3; // 二进制 0011
let result = a | b; // 7 (二进制 0111)

5.3 按位异或运算符 (^)

按位异或运算符用于对两个数的二进制表示进行按位异或操作。

let a = 5; // 二进制 0101
let b = 3; // 二进制 0011
let result = a ^ b; // 6 (二进制 0110)

5.4 按位非运算符 (~)

按位非运算符用于对一个数的二进制表示进行按位取反操作。

let a = 5; // 二进制 0101
let result = ~a; // -6 (二进制 1010)

5.5 左移运算符 (<<)

左移运算符用于将一个数的二进制表示向左移动指定的位数。

let a = 5; // 二进制 0101
let result = a << 1; // 10 (二进制 1010)

5.6 右移运算符 (>>)

右移运算符用于将一个数的二进制表示向右移动指定的位数。

let a = 5; // 二进制 0101
let result = a >> 1; // 2 (二进制 0010)

5.7 无符号右移运算符 (>>>)

无符号右移运算符用于将一个数的二进制表示向右移动指定的位数,左侧补0。

let a = -5; // 二进制 11111111111111111111111111111011
let result = a >>> 1; // 2147483645 (二进制 01111111111111111111111111111101)

6. 条件(三元)运算符

条件运算符是JavaScript中唯一的三元运算符,用于根据条件选择两个值中的一个。

let age = 18;
let status = (age >= 18) ? "Adult" : "Minor";
console.log(status); // "Adult"

7. 类型运算符

类型运算符用于确定变量的数据类型。

7.1 typeof 运算符

typeof 运算符用于返回变量的数据类型。

let a = 5;
console.log(typeof a); // "number"

let b = "Hello";
console.log(typeof b); // "string"

let c = true;
console.log(typeof c); // "boolean"

let d = {};
console.log(typeof d); // "object"

let e = null;
console.log(typeof e); // "object"

let f = undefined;
console.log(typeof f); // "undefined"

7.2 instanceof 运算符

instanceof 运算符用于检查对象是否属于某个类的实例。

let arr = [1, 2, 3];
console.log(arr instanceof Array); // true

let date = new Date();
console.log(date instanceof Date); // true

8. 其他运算符

8.1 逗号运算符 (,)

逗号运算符用于在一条语句中执行多个操作,返回最后一个操作的结果。

let a = (5, 10);
console.log(a); // 10

8.2 void 运算符

void 运算符用于执行表达式但不返回任何值。

void (5 + 3); // 无返回值

8.3 delete 运算符

delete 运算符用于删除对象的属性或数组的元素。

let obj = { a: 1, b: 2 };
delete obj.a;
console.log(obj); // { b: 2 }

let arr = [1, 2, 3];
delete arr[1];
console.log(arr); // [1, empty, 3]

8.4 new 运算符

new 运算符用于创建一个对象实例。

function Person(name) {
    this.name = name;
}

let person = new Person("John");
console.log(person.name); // "John"

8.5 in 运算符

in 运算符用于检查对象是否包含某个属性。

let obj = { a: 1, b: 2 };
console.log("a" in obj); // true
console.log("c" in obj); // false

8.6 yield 运算符

yield 运算符用于暂停和恢复生成器函数的执行。

function* generator() {
    yield 1;
    yield 2;
    yield 3;
}

let gen = generator();
console.log(gen.next().value); // 1
console.log(gen.next().value); // 2
console.log(gen.next().value); // 3

9. 运算符优先级

JavaScript中的运算符有不同的优先级,决定了表达式中运算符的执行顺序。以下是一些常见运算符的优先级(从高到低):

  1. 括号 ()
  2. 成员访问 .[]
  3. 函数调用 ()
  4. 自增 ++、自减 --
  5. 逻辑非 !、按位非 ~typeofvoiddelete
  6. 乘法 *、除法 /、取余 %
  7. 加法 +、减法 -
  8. 按位左移 <<、按位右移 >>、无符号右移 >>>
  9. 小于 <、小于等于 <=、大于 >、大于等于 >=instanceofin
  10. 相等 ==、不等 !=、严格相等 ===、严格不等 !==
  11. 按位与 &
  12. 按位异或 ^
  13. 按位或 |
  14. 逻辑与 &&
  15. 逻辑或 ||
  16. 条件(三元)运算符 ? :
  17. 赋值运算符 =+=-=*=/=%=<<=>>=>>>=&=^=|=
  18. 逗号运算符 ,

10. 总结

JavaScript提供了丰富的运算符,涵盖了算术、赋值、比较、逻辑、位运算等多个方面。理解这些运算符的使用方法和优先级对于编写高效、可读性强的代码至关重要。通过本文的介绍,希望读者能够更好地掌握JavaScript中的运算符,并在实际开发中灵活运用。

推荐阅读:
  1. 怎么使用Javascript运算符
  2. JavaScript中的运算符有哪些

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

javascript

上一篇:怎么用nodejs搭建代理服务器

下一篇:JS的while循环语句如何使用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》