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备份”...
wordpress后台更新后 前端没变化的解决方法
使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…...
【Axure高保真原型】引导弹窗
今天和大家中分享引导弹窗的原型模板,载入页面后,会显示引导弹窗,适用于引导用户使用页面,点击完成后,会显示下一个引导弹窗,直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...
Leetcode 3576. Transform Array to All Equal Elements
Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接:3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到…...
前端倒计时误差!
提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...
Day131 | 灵神 | 回溯算法 | 子集型 子集
Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣(LeetCode) 思路: 笔者写过很多次这道题了,不想写题解了,大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...
第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明
AI 领域的快速发展正在催生一个新时代,智能代理(agents)不再是孤立的个体,而是能够像一个数字团队一样协作。然而,当前 AI 生态系统的碎片化阻碍了这一愿景的实现,导致了“AI 巴别塔问题”——不同代理之间…...
智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...
day36-多路IO复用
一、基本概念 (服务器多客户端模型) 定义:单线程或单进程同时监测若干个文件描述符是否可以执行IO操作的能力 作用:应用程序通常需要处理来自多条事件流中的事件,比如我现在用的电脑,需要同时处理键盘鼠标…...
为什么要创建 Vue 实例
核心原因:Vue 需要一个「控制中心」来驱动整个应用 你可以把 Vue 实例想象成你应用的**「大脑」或「引擎」。它负责协调模板、数据、逻辑和行为,将它们变成一个活的、可交互的应用**。没有这个实例,你的代码只是一堆静态的 HTML、JavaScript 变量和函数,无法「活」起来。 …...
Python竞赛环境搭建全攻略
Python环境搭建竞赛技术文章大纲 竞赛背景与意义 竞赛的目的与价值Python在竞赛中的应用场景环境搭建对竞赛效率的影响 竞赛环境需求分析 常见竞赛类型(算法、数据分析、机器学习等)不同竞赛对Python版本及库的要求硬件与操作系统的兼容性问题 Pyth…...
