JavaScript表达式和运算符
表达式
表达式一般由常量、变量、运算符、子表达式构成。最简单的表达式可以是一个简单的值。常量或变量。例:var a=10
运算符
运算符一般用符号来表示,也有些使用关键字表示。运算符由3中类型
1.一元运算符:一个运算符能够结合一个操作数,把一个操作数运算后转换为另一个操作数。
2.二元运算符:一个运算符可以结合两个操作数,形成一个复杂的运算,大部分都是二元运算符
3.单元运算符:一个运算符可以结合三个操作数,把三个操作数合并为表达式,最后返回一个值。
JavaScript运算符有:
| 分类 | 运算符 | 操作数类型 | 运算顺序 | 运算方向 | 说明 |
|---|---|---|---|---|---|
| 算数运算符 | + | 数值 | 12 | 左 | 两数相加 |
| ++ | 数值 | 14 | 右 | 自增 | |
| – | 数值 | 12 | 左 | 减法 | |
| – – | 数值 | 14 | 右 | 自减 | |
| – | 数字 | 14 | 右 | 一元求负 | |
| + | 数字 | 14 | 右 | 一元求正 | |
| * | 数值 | 13 | 左 | 乘法 | |
| / | 数值 | 13 | 左 | 除法 | |
| % | 数值 | 13 | 左 | 求余 | |
| 字符串运算符 | + | 字符串 | 12 | 连接两个字符串 | |
| += | 字符串 | 2 | 右 | 连接两个字符串,并将结果赋给第一个字符串 | |
| 逻辑运算符 | && | 布尔值 | 5 | 右 | 逻辑与全真则真 |
| || | 布尔值 | 4 | 左 | 逻辑或,全假则假 | |
| ! | 布尔值 | 14 | 右 | 逻辑非,真则假,假则真 | |
| 位运算符 | & | 整数 | 8 | 左 | 按位与,两个操作数对应位都是1,返回1 |
| | | 整数 | 6 | 左 | 按位或,两个操作数对应位都为0,返回0 | |
| ^ | 整数 | 7 | 左 | 按位异或。两个操作数对应位值有一个1则返回1 | |
| ~ | 整数 | 14 | 右 | 求反 | |
| << | 整数 | 11 | 左 | 左移(将第一操作数二进制的形式的每一位向左移,移动的位数由第二操作数决定。右面补0) | |
| >> | 整数 | 11 | 左 | 右移(将第一操作数二进制的形式的每一位向右移,移动的位数由第二操作数决定。忽略被移出的位) | |
| >>> | 整数 | 11 | 左 | 逻辑右移(将第一操作数二进制的形式的每一位向右移,移动的位数由第二操作数决定。忽略被移出的位,左面补0) | |
| 赋值运算符 | = | 标识符,任意 | 2 | 右 | 将第二操作数的值赋给第一操作数 |
| += | 标识符,任意 | 2 | 右 | 两数相加,将和赋给第一个数 | |
| –= | 标识符,任意 | 2 | 右 | 两数相减,将值赋给第一个数 | |
| *= | 标识符,任意 | 2 | 右 | 两数相乘,将值赋给第一个数 | |
| /= | 标识符,任意 | 2 | 右 | 两数相除,将商赋给第一个数 | |
| &= | 标识符,任意 | 2 | 右 | 执行按位与,将结果赋给第一个操作数 | |
| ^= | 标识符,任意 | 2 | 右 | 执行按位异或,将结果赋给第一个操作数 | |
| |= | 标识符,任意 | 2 | 右 | 执行按位或,将结果赋给第一个操作数 | |
| <<= | 标识符,任意 | 2 | 右 | 执行左移,将结果赋给第一个操作数 | |
| >>= | 标识符,任意 | 2 | 右 | 执行右移,将结果赋给第一个操作数 | |
| >>>= | 标识符,任意 | 2 | 右 | 执行逻辑右移,将结果赋给第一个操作数 | |
| %= | 标识符,任意 | 2 | 右 | 计算两个数相除的余数,并将余数赋给第一个数 | |
| 比较运算符 | == | 任意 | 9 | 左 | 操作数相等,则返回真 |
| === | 任意 | 9 | 左 | 操作数完全相等,则返回真 | |
| != | 任意 | 9 | 左 | 操作数不相等,则返回真 | |
| !== | 任意 | 9 | 左 | 操作数不完全相等,则返回真 | |
| > | 数值或字符串 | 10 | 左 | 左操作数大于右操作数,返回真 | |
| < | 数值或字符串 | 10 | 左 | 左操作数小于右操作数,返回真 | |
| >= | 数值或字符串 | 10 | 左 | 左操作数大于等于右操作数,返回真 | |
| <= | 数值或字符串 | 10 | 左 | 左操作数小于等于右操作数,返回真 | |
| 特殊运算符 | ?: | 布尔值,任意,任意 | 3 | 右 | 执行一个简单的if···else语句 |
| , | 任意 | 1 | 左 | 计算两个表达式,返回第二个表达式的值 | |
| delete | 属性标识 | 14 | 右 | 允许删除一个对象的属性或数组中的指定元素 | |
| new | 类型,参数 | 15 | 右 | 允许创建一个用户自定义的对象类型或内建对象类型的实例 | |
| typeof | 任意 | 14 | 右 | 返回一个字符串,并说明其数据类型 | |
| instanceof | 对象,类型 | 10 | 左 | 检查对象的类型 | |
| in | 字符串,对象 | 10 | 左 | 检查一个属性是否存在 | |
| void | 任意 | 14 | 右 | 计算一个表达式但不返回值 | |
| . | 对象,标识符 | 15 | 左 | 属性存取 | |
| [ ] | 数组,整数 | 15 | 左 | 数组下标 | |
| ( ) | 函数,参数 | 15 | 左 | 函数调用 | |
| 实例: |
<script>var a=10var b=20var c=a+bdocument.write("结果是:"+c)</script>

相关文章:
JavaScript表达式和运算符
表达式 表达式一般由常量、变量、运算符、子表达式构成。最简单的表达式可以是一个简单的值。常量或变量。例:var a10 运算符 运算符一般用符号来表示,也有些使用关键字表示。运算符由3中类型 1.一元运算符:一个运算符能够结合一个操作数&…...
爬虫实训案例:中国大学排名
近一个月左右的时间学习爬虫,在用所积累的知识爬取了《中国大学排名》这个网站,爬取的内容虽然只是可见的文本,但对于初学者来说是一个很好的练习。在爬取的过程中,通过请求数据、解析内容、提取文本、存储数据等几个重要的内容入…...
C++ IO流
C标准IO流 使用cout进行标准输出,即数据从内存流向控制台(显示器)使用cin进行标准输入,即数据通过键盘输入到程序中使用cerr进行标准错误的输出使用clog进行日志的输出 C文件IO流 文件流对象 ofstream:只写 ofstream 是 C 中用于输出文件…...
debian nginx upsync consul 实现动态负载
1. consul 安装 wget -O- https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg echo "deb [signed-by/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_r…...
前端基础入门三大核心之HTML篇 —— 同源策略的深度解析与安全实践
前端基础入门三大核心之HTML篇 —— 同源策略的深度解析与安全实践 一、同源策略:定义与起源1.1 定义浅析1.2 何为“源”?1.3 起源与意义 二、同源策略的运作机制2.1 限制范围2.2 安全边界 三、跨越同源的挑战与对策3.1 JSONP3.2 CORS3.3 postMessage 四…...
go 微服务框架 kratos 日志库使用方法及原理探究
一、Kratos 日志设计理念 kratos 日志库相关的官方文档:日志 | Kratos Kratos的日志库主要有如下特性: Logger用于对接各种日志库或日志平台,可以用现成的或者自己实现Helper是在您的项目代码中实际需要调用的,用于在业务代码里…...
VC++位移操作>>和<<以及逻辑驱动器插拔产生的掩码dbv.dbcv_unitmask进行分析的相关代码
VC位移操作>>和<<以及逻辑驱动器插拔产生的掩码dbv.dbcv_unitmask进行分析的相关代码 一、VC位移操作符<<和>>1、右位移操作符 >>:2、左位移操作符 <<: 二、逻辑驱动器插拔产生的掩码 dbv.dbcv_unitmask 进行分析的…...
查看gpu
## 查看gpu信息 if_cuda torch.cuda.is_available() print("if_cuda",if_cuda)gpu_count torch.cuda.device_count() print("gpu_count",gpu_count)...
CSS与表格设计
在网页设计中,表格是一种不可或缺的元素,用于展示和组织数据。虽然HTML提供了基本的表格结构,但通过CSS(层叠样式表)的应用,我们可以极大地提升表格的外观和用户体验。本文将探讨如何利用CSS来设计既美观又…...
阴影映射(线段树)
实时阴影是电子游戏中最为重要的画面效果之一。在计算机图形学中,通常使用阴影映射方法来实现实时阴影。 游戏开发部正在开发一款 2D 游戏,同时希望能够在 2D 游戏中模仿 3D 游戏的光影效果,请帮帮游戏开发部! 给定 x-y 平面上的…...
Docker 容器间通讯
1、虚拟ip/访问 同一网络 安装docker时,docker会默认创建一个内部的桥接网络docker0,每创建一个容器分配一个虚拟网卡,容器之间(包括宿主机)可以根据分配的ip互相访问(ps:其他主机(包括其他主机的容器)无法ping通docker容器ip无法访问&#…...
C语言章节学习归纳--数据类型、运算符与表达式
3.1 C语言的数据类型(理解) 首先,对变量的定义可以包括三个方面: 数据类型 存储类型 作用域 所谓数据类型是按被定义变量的性质,表示形式,占据存储空间的多少,构造特点来划分的。在C语言中&…...
Centos 7.9 使用 iso 搭建本地 YUM 源
Centos 7.9 使用 iso 搭建本地 YUM 源 1 建立挂载点 [rootlocalhost ~]# mkdir -p /media/cdrom/ 2 创建光盘存储路径 [rootlocalhost ~]# mkdir -p /mnt/cdrom/ 3 上传 CentOS-7-x86_64-Everything-2207-02.iso 到 光盘存储路径 [rootlocalhost ~]# ls /mnt/cdrom/ CentOS-…...
NFT Insider #131:Mocaverse NFT市值破3.5万ETH,The Sandbox 参加NFCsummit
引言:NFT Insider由NFT收藏组织WHALE Members(https://twitter.com/WHALEMembers)、BeepCrypto (https://twitter.com/beep_crypto)联合出品,浓缩每周NFT新闻,为大家带来关于NFT最全面、最新鲜、…...
BatBot智慧能源管理平台,更加有效地管理能源
随着能源消耗的不断增加,能源管理已成为全球面临的重要问题。BatBot智慧能源管理作为一种的能源管理技术,促进企业在用能效率及管理有着巨大的提升。 BatBot智慧能源管理是一种基于人工智能技术的能源管理系统,通过智能分析和优化能源使用&…...
医院预约挂号系统微信小程序APP
医院预约挂号小程序,前端后台(后台 java spring boot mysql) 医院预约挂号系统具体功能介绍:展示医院信息、可以注册和登录, 预约挂号(包含各个科室的预约,可以预约每个各个医生)&…...
【代码随想录 二叉树】二叉树前序、中序、后序遍历的迭代遍历
文章目录 1. 二叉树前序遍历(迭代法)2. 二叉树后序遍历(迭代法)3. 二叉树中序遍历(迭代法) 1. 二叉树前序遍历(迭代法) 题目连接 🍎因为处理顺序和访问顺序是一致的。所…...
Error:(6, 43) java: 程序包org.springframework.data.redis.core不存在
目录 一、在做SpringBoot整合Redis的项目时,报错: 二、尝试 三、解决办法 一、在做SpringBoot整合Redis的项目时,报错: 二、尝试 给依赖加版本号,并且把版本换了个遍,也不行,也去update过ma…...
Qt 科目一考试系统(有源码)
项目源码和资源:科目一考试系统: qt实现科目一考试系统 一.项目概述 该项目是一个基于Qt框架开发的在线考试系统,主要实现了考试题目的随机抽取、考试时间限制、成绩统计等功能。用户可以通过界面操作进行考试,并查看自己的考试成绩。 二.技…...
在 Visual Studio 2022 (VS2022) 中删除 Git 分支的步骤如下
git branch -r PS \MauiApp1> git push origin --delete “20240523备份” git push origin --delete “20240523备份”...
FFmpeg 低延迟同屏方案
引言 在实时互动需求激增的当下,无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作,还是游戏直播的画面实时传输,低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架,凭借其灵活的编解码、数据…...
通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...
Day131 | 灵神 | 回溯算法 | 子集型 子集
Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣(LeetCode) 思路: 笔者写过很多次这道题了,不想写题解了,大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...
华为OD机试-食堂供餐-二分法
import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...
C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...
聊一聊接口测试的意义有哪些?
目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开,首…...
重启Eureka集群中的节点,对已经注册的服务有什么影响
先看答案,如果正确地操作,重启Eureka集群中的节点,对已经注册的服务影响非常小,甚至可以做到无感知。 但如果操作不当,可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...
【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制
使用 NginxLua 实现基于 IP 的访问频率限制 在高并发场景下,限制某个 IP 的访问频率是非常重要的,可以有效防止恶意攻击或错误配置导致的服务宕机。以下是一个详细的实现方案,使用 Nginx 和 Lua 脚本结合 Redis 来实现基于 IP 的访问频率限制…...
什么是VR全景技术
VR全景技术,全称为虚拟现实全景技术,是通过计算机图像模拟生成三维空间中的虚拟世界,使用户能够在该虚拟世界中进行全方位、无死角的观察和交互的技术。VR全景技术模拟人在真实空间中的视觉体验,结合图文、3D、音视频等多媒体元素…...
