JavaScript 基础教程:运算符与数学运算详解

JavaScript 基础教程:运算符与数学运算详解

【免费下载链接】ru.javascript.info Современный учебник JavaScript 【免费下载链接】ru.javascript.info 项目地址: https://gitcode.com/gh_mirrors/ru/ru.javascript.info

前言

在 JavaScript 编程中,运算符是我们日常开发不可或缺的工具。本文将全面介绍 JavaScript 中的基础运算符,包括数学运算、字符串连接、赋值操作等核心概念,帮助初学者建立扎实的基础。

基本术语解析

在深入运算符之前,我们需要明确几个关键术语:

  1. 操作数(Operand):运算符作用的对象。例如在表达式 5 * 2 中,52 就是操作数。

  2. 一元运算符(Unary Operator):只作用于一个操作数的运算符。例如取反运算符 -

    let x = 1;
    x = -x;  // 使用一元负号
    alert(x); // 显示 -1
    
  3. 二元运算符(Binary Operator):作用于两个操作数的运算符。例如减法运算符 -

    let x = 1, y = 3;
    alert(y - x); // 2,二元减法运算
    

数学运算符详解

JavaScript 支持以下基本数学运算符:

  • 加法 +
  • 减法 -
  • 乘法 *
  • 除法 /
  • 取余 %
  • 指数运算 **

取余运算符 %

取余运算符返回除法后的余数:

alert(5 % 2); // 1,5除以2的余数
alert(8 % 3); // 2
alert(8 % 4); // 0

指数运算符 **

指数运算符计算基数的指数次幂:

alert(2 ** 3); // 8 (2的3次方)
alert(4 ** (1/2)); // 2 (相当于平方根)

字符串连接的特殊行为

+ 运算符在处理字符串时有特殊行为:

let s = "Hello" + "World";
alert(s); // HelloWorld

重要特性:只要任一操作数是字符串,另一操作数会被自动转换为字符串:

alert('1' + 2); // "12"
alert(2 + '1'); // "21"

类型转换与一元加号

一元加号 + 可将非数值类型转换为数字:

alert(+true); // 1
alert(+"");   // 0

这在处理表单输入等场景特别有用:

let apples = "2";
let oranges = "3";

// 错误做法:字符串连接
alert(apples + oranges); // "23"

// 正确做法:转换为数字后相加
alert(+apples + +oranges); // 5

运算符优先级

JavaScript 运算符遵循特定优先级规则:

优先级运算符类型示例
15一元加/减+x, -x
14指数运算**
13乘/除*, /
12加/减+, -
2赋值=

赋值运算符深入

链式赋值

let a, b, c;
a = b = c = 2 + 2; // 所有变量值为4

复合赋值运算符

简化常见操作:

let n = 2;
n += 5; // n = 7 (等同于 n = n + 5)
n *= 2; // n = 14

自增/自减运算符

前缀与后缀形式

  1. 前缀形式:先运算后返回值

    let counter = 1;
    alert(++counter); // 2
    
  2. 后缀形式:先返回值后运算

    let counter = 1;
    alert(counter++); // 1 (之后counter变为2)
    

最佳实践:为了代码清晰,建议将自增/自减操作单独成行。

其他运算符

位运算符

包括 & (AND)、| (OR)、^ (XOR)、~ (NOT) 等,主要用于底层二进制操作。

逗号运算符

逗号运算符允许在单个语句中执行多个表达式,返回最后一个表达式的结果:

let a = (1 + 2, 3 + 4);
alert(a); // 7

总结

掌握 JavaScript 运算符是编程的基础。关键要点包括:

  • 理解不同类型运算符的行为差异
  • 注意运算符优先级对表达式求值的影响
  • 合理使用赋值简写形式提高代码简洁性
  • 谨慎使用自增/自减运算符,保持代码可读性

通过系统学习和实践这些运算符,你将能够编写更高效、更可靠的 JavaScript 代码。

【免费下载链接】ru.javascript.info Современный учебник JavaScript 【免费下载链接】ru.javascript.info 项目地址: https://gitcode.com/gh_mirrors/ru/ru.javascript.info

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值