当前位置: 首页 > news >正文

深入理解 JavaScript 中的表达式、运算符、语句和声明概念

深入理解 JavaScript 中的表达式、运算符、语句和声明

在学习和使用 JavaScript 编程时,理解基本的语言构成要素至关重要。本文将详细介绍 JavaScript 中的表达式、运算符、语句和声明概念。


目录

  1. 表达式(Expressions)
    • 什么是表达式
    • 表达式的类型
    • 表达式示例
  2. 运算符(Operators)
    • 什么是运算符
    • 运算符的分类
    • 运算符示例
  3. 语句(Statements)
    • 什么是语句
    • 常见的语句类型
    • 语句示例
  4. 声明(Declarations)
    • 什么是声明
    • 变量声明
    • 函数声明
    • 类声明
  5. 总结

表达式(Expressions)

什么是表达式

表达式是 JavaScript 中能够产生值的代码片段。任何能够被计算并返回一个值的代码都是表达式。

表达式的类型

  1. 原始表达式:直接量(字面量)和关键字,如数字、字符串、布尔值、nullundefined

    42;
    'Hello, world!';
    true;
    null;
    undefined;
    
  2. 对象初始化表达式:创建对象或数组。

    { name: 'Alice', age: 25 };
    [1, 2, 3];
    
  3. 函数表达式:使用函数关键字创建匿名或命名函数。

    function() { return 'Hello'; };
    (function namedFunc() { return 'Hi'; });
    
  4. 类表达式:使用 class 关键字创建类。

    class {};
    class MyClass {};
    
  5. 算术表达式:使用算术运算符计算值。

    5 + 3;
    10 * (2 + 3);
    
  6. 逻辑表达式:使用逻辑运算符返回布尔值。

    true && false;
    5 > 3 || 2 < 1;
    
  7. 条件(三元)表达式

    condition ? exprIfTrue : exprIfFalse;
    

表达式示例

// 数字字面量
let a = 10;// 字符串字面量
let b = 'JavaScript';// 算术表达式
let c = a * 2; // c 的值为 20// 逻辑表达式
let isAdult = age >= 18;// 函数表达式
let greet = function(name) {return 'Hello, ' + name;
};// 条件表达式
let max = a > b ? a : b;

运算符(Operators)

什么是运算符

运算符是用于操作数之间的计算、比较或逻辑操作的符号。运算符结合操作数形成表达式,并返回一个新值。

运算符的分类

  1. 算术运算符:用于数学计算。

    • 加法:+
    • 减法:-
    • 乘法:*
    • 除法:/
    • 求余:%
    • 指数:**
  2. 赋值运算符:用于给变量赋值。

    • 简单赋值:=
    • 复合赋值:+=, -=, *=, /=, %=, **=
  3. 比较运算符:用于比较两个值,返回布尔值。

    • 相等:==
    • 全等:===
    • 不相等:!=
    • 不全等:!==
    • 大于/小于:>, <
    • 大于等于/小于等于:>=, <=
  4. 逻辑运算符:用于逻辑运算。

    • 与:&&
    • 或:||
    • 非:!
  5. 位运算符:用于按位操作整数。

    • 按位与:&
    • 按位或:|
    • 按位异或:^
    • 按位非:~
    • 左移:<<
    • 右移:>>
    • 无符号右移:>>>
  6. 字符串运算符:连接字符串。

    • 字符串连接:+
  7. 其他运算符

    • 条件(三元)运算符:condition ? exprIfTrue : exprIfFalse
    • typeof 运算符:typeof operand
    • instanceof 运算符:object instanceof constructor
    • 解构赋值运算符:let { x, y } = obj;

运算符示例

// 算术运算符
let sum = 5 + 3;       // sum 为 8
let product = 4 * 2;   // product 为 8// 赋值运算符
let x = 10;
x += 5;                // x 现在为 15// 比较运算符
let isEqual = (x === 15); // isEqual 为 true// 逻辑运算符
let isAdult = (age >= 18) && (age < 65);// 字符串运算符
let message = 'Hello, ' + 'world!';// 条件运算符
let access = isAdmin ? 'granted' : 'denied';// typeof 运算符
console.log(typeof x); // 输出 'number'// instanceof 运算符
console.log(dateObj instanceof Date); // 如果 dateObj 是 Date 的实例,输出 true

语句(Statements)

什么是语句

语句是执行特定操作的完整指令,通常以分号结束。语句可以包含表达式和关键字,控制程序的流程和行为。

常见的语句类型

  1. 表达式语句:由表达式组成,用于计算值。

    x = 5;
    
  2. 条件语句:根据条件执行不同的代码块。

    • if 语句
    • else 语句
    • switch 语句
  3. 循环语句:重复执行代码块。

    • for 循环
    • while 循环
    • do...while 循环
    • for...in 循环
    • for...of 循环
  4. 跳转语句:控制程序流程。

    • break
    • continue
    • return
    • throw
  5. 声明语句:声明变量、函数或类。

    • var, let, const
    • function
    • class
  6. 异常处理语句

    • try...catch
    • finally

语句示例

// 表达式语句
let total = price * quantity;// 条件语句
if (score >= 60) {console.log('Passed');
} else {console.log('Failed');
}// 循环语句
for (let i = 0; i < 5; i++) {console.log(i);
}// 跳转语句
while (true) {if (condition) {break;}
}// 声明语句
let name = 'Alice';
function greet() {console.log('Hello');
}// 异常处理语句
try {throw new Error('Something went wrong');
} catch (error) {console.error(error);
} finally {console.log('Cleanup');
}

声明(Declarations)

什么是声明

声明用于定义标识符(变量、函数、类等),为其分配存储空间或定义其行为。声明不会立即执行代码,但为后续的代码提供了基础。

变量声明

var 声明
  • 作用域:函数作用域或全局作用域。
  • 变量提升:在作用域顶部被提升,但未赋值。
var x = 10;
function test() {var y = 20;
}
let 声明
  • 作用域:块作用域。
  • 不允许重复声明
  • 暂时性死区(TDZ):在声明之前无法访问变量。
let x = 10;
if (true) {let y = 20;
}
const 声明
  • 作用域:块作用域。
  • 必须在声明时初始化
  • 不可重新赋值
const PI = 3.14159;

函数声明

  • 使用 function 关键字声明,函数名可用于递归调用。
function add(a, b) {return a + b;
}
  • 函数提升:函数声明被提升到所在作用域的顶部。

类声明

  • 使用 class 关键字声明,定义类的构造函数和方法。
class Person {constructor(name) {this.name = name;}greet() {console.log('Hello, ' + this.name);}
}
  • 类的特性
    • 不可提升:类声明不会被提升,在声明之前无法访问。
    • 严格模式:类内部默认使用严格模式。

总结

  • 表达式是能够计算并返回值的代码片段,是程序的基本组成部分。
  • 运算符用于对操作数进行计算、比较或逻辑操作,结合操作数组成表达式。
  • 语句是执行特定操作的完整指令,控制程序的流程和行为。
  • 声明用于定义标识符,为变量、函数或类分配存储空间或定义其行为。

http://www.mrgr.cn/news/45004.html

相关文章:

  • 二进制求和
  • Bianchi模型、python计算及ns3验证_关于E[P*]的补充
  • Kubernetes 洞察:DaemonSet 全解析
  • Facebook 正式推出了一项专为 Z 世代设计的全新改版
  • 【时间盒子】-【9.任务设置项】自定义任务名称、任务时长等设置项组件
  • 软件测试比赛-学习
  • github项目学习——ruoyi-vue-pro
  • 音视频入门基础:FLV专题(14)——FFmpeg源码中,解码Script Tag的实现
  • 基于Python的美术馆预约系统【附源码】
  • [Algorithm][贪心][合并区间][无重叠区间][用最少数量的箭引爆气球]详细讲解
  • 数据结构 ——— 相交链表(链表的共节点)
  • CART回归树中的 方差减少量 计算步骤和示例
  • Ancient City Ruins 古代城市遗址废墟建筑游戏场景
  • 在数据中,如何删除表中的记录?
  • Cesium的一些神奇概念及技术流程(1)
  • 告别音乐小白!字节跳动AI音乐创作工具,让你一键变作曲家!
  • linux下cmake编译64位,32位,ARM,ARM64程序
  • 什么是 JavaScript 的数组空槽
  • 请散户股民看过来,密切关注两件大事
  • 机器学习——自监督学习与无监督学习