【JavaScript】JavaScript 运算符 ⑤ ( 赋值运算符 | 基础赋值运算符 与 复合赋值运算符 )

news2025/1/13 3:31:23

文章目录

  • 一、JavaScript 赋值运算符
    • 1、赋值运算符 概念
    • 2、基础赋值运算符 与 复合赋值运算符
    • 3、复合赋值运算符
    • 4、完整代码示例





一、JavaScript 赋值运算符



JavaScript 赋值运算符种类 :

  • 基础赋值运算符 :
    • 等于 : = ;
  • 复合赋值运算符 :
    • 加等 : +=
    • 减等 : -=
    • 乘等 : *=
    • 除等 : /=
    • 取模等 : %=
    • 有符号左移等 : <<=
    • 有符号右移等 : >>=
    • 无符号左移等 : <<<=
    • 无符号右移等 : >>>=

1、赋值运算符 概念


在 JavaScript 语言中 , " 赋值运算符 " 的 作用是 为 变量 分配值 ;

最基础的 " 赋值运算符 " 是 = , 该运算符的作用是 将 = 右侧的值 分配给 = 左侧的 变量 ;


代码示例 :

// 为 变量 num 分配 数字类型值 3
var num = 3;  

2、基础赋值运算符 与 复合赋值运算符


在 JavaScript 语言中 , 除了 最基础的 " 赋值运算符 " = 之外 , 还有很多 " 复合赋值运算符 " ,

" 复合赋值运算符 " 在进行 赋值 的同时 , 还可以附带 执行一些其他的运算 ;


我们要对 var num = 3; 变量 进行 自增 1 的操作 , 使用 num++ 即可 ,

如果要对 num 变量 进行自增 10 操作 , 此时就需要使用 " 复合赋值运算符 " 了 , num += 10 ;


3、复合赋值运算符


复合赋值运算符 :

  • 加等 : += , 将 赋值运算符 右侧的值 加到 左侧的变量上 , 然后将运算结果赋给左侧的变量 ;
// 为 变量 num 分配 数字类型值 3
var num = 3;

// 为 num 变量 加 10 , 然后将运算结果 , 赋值给 num 变量  
num += 10;
console.log(num); // 输出 : 13
  • 减等 : -= , 将 赋值运算符 左侧的变量 减去 右侧的值 , 然后将 运算结果 赋给左侧的变量 ;
// 为 变量 num 分配 数字类型值 3
var num = 3;

// 为 num 变量 减 10 , 然后将运算结果 , 赋值给 num 变量  
num -= 10;
console.log(num); // 输出 : -7
  • 乘等 : *= , 将 赋值运算符 左侧的变量 乘以 右侧的值 , 然后将 运算结果 赋给左侧的变量 ;
// 为 变量 num 分配 数字类型值 3
var num = 3;

// 为 num 变量 乘以 10 , 然后将运算结果 , 赋值给 num 变量  
num *= 10;
console.log(num); // 输出 : 30
  • 除等 : /= , 将 赋值运算符 左侧的变量 除以 右侧的值 , 然后将 运算结果 赋给左侧的变量 ;
// 为 变量 num 分配 数字类型值 3
var num = 3;

// 为 num 变量 除以 10 , 然后将运算结果 , 赋值给 num 变量  
num /= 10;
console.log(num); // 输出 : 0
  • 取模等 : %= , 将 赋值运算符 左侧的变量 对右侧的值 取模 , 然后将 取模运算的结果 赋给左侧的变量 ;
// 为 变量 num 分配 数字类型值 3
var num = 3;

// 为 num 变量 乘以 10 , 然后将运算结果 , 赋值给 num 变量  
num %= 10;
console.log(num); // 输出 : 3
  • 有符号左移等 : <<= , 将 赋值运算符 左侧的变量的 二进制值 向左移动指定的位数 , 然后将 运算结果 赋给左侧的变量 ;
// 为 变量 num 分配 数字类型值 3
var num = 3;

// 为 num 变量 左移 1 位 , 然后将运算结果 , 赋值给 num 变量  
// 二进制 11 左移 1 位变为 二进制 110 , 结果为 6
num <<= 1;
console.log(num); // 输出 : 6
  • 有符号右移等 : >>= , 将 赋值运算符 左侧的变量的 二进制值 向右移动指定的位数 , 然后将 运算结果 赋给左侧的变量 ;
// 为 变量 num 分配 数字类型值 3
var num = 3;

// 为 num 变量 右移 1 位 , 然后将运算结果 , 赋值给 num 变量  
// 二进制 11 右移 1 位变为 二进制 01 , 结果为 1
num >>= 1;
console.log(num); // 输出 : 1

4、完整代码示例


完整代码示例 :

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <!-- 设置 meta 视口标签 -->
    <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no,maximum-scale=1.0,minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>JavaScript</title>
    <style></style>
    <script>
        // 赋值运算符

        // 为 变量 num 分配 数字类型值 3
        var num = 3;

        // 为 num 变量 加 10 , 然后将运算结果 , 赋值给 num 变量  
        num += 10;
        console.log(num); // 输出 : 13

        num = 3;
        // 为 num 变量 减 10 , 然后将运算结果 , 赋值给 num 变量  
        num -= 10;
        console.log(num); // 输出 : -7

        num = 3;
        // 为 num 变量 乘以 10 , 然后将运算结果 , 赋值给 num 变量  
        num *= 10;
        console.log(num); // 输出 : 30

        num = 3;
        // 为 num 变量 除以 10 , 然后将运算结果 , 赋值给 num 变量  
        num /= 10;
        console.log(num); // 输出 : 0.3

        num = 3;
        // 为 num 变量 左移 1 位 , 然后将运算结果 , 赋值给 num 变量  
        // 二进制 11 左移 1 位变为 二进制 110 , 结果为 6
        num <<= 1;
        console.log(num); // 输出 : 6

        num = 3;
        // 为 num 变量 右移 1 位 , 然后将运算结果 , 赋值给 num 变量  
        // 二进制 11 右移 1 位变为 二进制 01 , 结果为 1
        num >>= 1;
        console.log(num); // 输出 : 1
    </script>
</head>

<body>
</body>

</html>

执行结果 :

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1524006.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

开启Safari手势支持

在使用Safari 的时候&#xff0c;大家有没有觉得不支持手势使用起来不是很方便&#xff0c; 触摸板只支持少量简单的手势&#xff0c;如缩放&#xff0c;滚动等。如果使用鼠标的用户&#xff0c;则完全无法使用手势。经过折腾研究&#xff0c;使用CirMenu应用可以完美解决这个要…

RAID技术知识详解到RAID 10的linux实现过程

1.RAID技术简介 RAID&#xff08;Redundant Array of Independent Disks&#xff09;独立磁盘冗余阵列。通俗来说就是将多个硬盘通过软件或硬件结合成虚拟单台大容量的硬盘使用。 RAID技术的特点&#xff1a; 可以自动检测故障硬盘&#xff1b; 可以重建硬盘坏道的资料&…

VBA批量绘制动态化数据图表

对于大多数使用的VBA的人来说&#xff0c;处理excel工作簿中批量数据是日常工作中常见的情形&#xff0c;但与此同时&#xff0c;VBA在批量绘图方面同样有简洁快速的特点。 说起Excel画图表&#xff0c;考虑一个问题&#xff0c;excel图表的本质是什么&#xff1f;很多人会不假…

便利店小程序有哪些功能

​便利店小程序为附近的住户提供小程序在线购物的服务。用户只需要打开小程序&#xff0c;就可以购买需要的商品&#xff0c;可以选择自取或者配送。整个过程非常简单快速。下面具体介绍便利店小程序的功能。 1. **商品展示**&#xff1a;展示便利店的商品信息&#xff0c;包括…

【C++刷题】优选算法——动态规划第一辑

1.状态表示是什么&#xff1f;简答理解是dp表里的值所表示的含义怎么来的&#xff1f;题目要求经验题目要求分析问题的过程中&#xff0c;发现重复子问题 2.状态转移方程dp[i]......细节问题&#xff1a;3.初始化控制填表的时候不越界4.填表顺序控制在填写当前状态的时候&#…

windows下修改mysql的max_allowed_packet的值

1)C:\Program Files\MySQL\MySQL Server 5.7 在MySQL 的安装目录下添加my.ini文件&#xff0c;同时添加空的data文件 2&#xff09;my.ini文件内容如下&#xff0c; [mysqld] port 3306 basedirC:\Program Files\MySQL\MySQL Server 5.7 datadirC:\Program Files\MySQL\MySQ…

软考78-上午题-【面向对象技术3-设计模式】-结构型设计模式01

一、适配器模式 1-1、意图 个类的接口转换成客户希望的另外一个接口。 Adapter 模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 1-2、结构 适配器模式分为&#xff1a; 1、适配器类模式&#xff1b; 2、适配器对象模式 类适配器使用多重继承对一个接口与另…

java基础(6) IO[下] 线程(补充) XML Servlet

输出流 OutputStream OutputStream是Java标准库提供的最基本的输出流。 和InputStream类似&#xff0c;OutputStream也是抽象类&#xff0c;它是所有输出流的超类。这个抽象类定义的一个最重要的方法就是void write(int b) public abstract void write(int b) throws IOExcep…

html--宠物

文章目录 htmljscss html <!DOCTYPE html> <html lang"en" > <head><meta charset"UTF-8"><title>CodePen - Spaceworm</title><script> window.requestAnimFrame (function() {return (window.requestAnimat…

Javascript抓取京东、淘宝商品数据(商品采集商品详情图片抓取)

之前用的方法&#xff1a; let temp []var lists $(#J_goodsList li.gl-item)$.each(lists,function(idx,item){ temp.push({ id:$(item).data(sku), goods_img:$(item).find(img).attr(src), goods_name:$(item).find(.p-name em).text(), market_price:$(item).fi…

2024 年(第 12 届)“泰迪杯”数据挖掘挑战赛——B 题:基于多模态特征融合的图像文本检索完整思路与源代码分享

一、问题背景 随着近年来智能终端设备和多媒体社交网络平台的飞速发展&#xff0c;多媒体数据呈现海量增长 的趋势&#xff0c;使当今主流的社交网络平台充斥着海量的文本、图像等多模态媒体数据&#xff0c;也使得人 们对不同模态数据之间互相检索的需求不断增加。有效的信…

洛谷P8972 『GROI-R1』 一切都已过去(树上前缀和+运算符重载)

『GROI-R1』 一切都已过去 题目背景 悦关上窗&#xff0c;拉上帘布。 果然还是想不起来啊。 隐约记得曾和什么人一起做过这样的事。 仰面躺下&#xff0c;手执一只木笺。 「究竟如何&#xff0c;才能拥有“过去”啊……」 她闭上双眼。 「6 岁前的记忆……究竟如何才能…

ConsiStory:Training-Free的主体一致性生成

Overview 一、总览二、PPT详解 ConsiStory 一、总览 题目&#xff1a; Training-Free Consistent Text-to-Image Generation 机构&#xff1a;NVIDIA, Tel-Aviv University 论文&#xff1a;https://arxiv.org/pdf/2402.03286.pdf 代码&#xff1a;https://consistory-paper.g…

Python自动获取指定上市公司的所有财务数据(资产负债表,利润表,现金流量表)

案例背景 很多经管类同学找财务数据都很困难&#xff0c;去找一个个查找特定的公司&#xff0c;然后又要去同花顺或者东方财富网一年一年的去查看报表&#xff0c;一年一年的数据一个个填入...太慢了。 tushare能获取金融数据的接口&#xff0c;他有资产负债表&#xff0c;利…

idea warning:java源值已过时将在未来所有发行版中删除

在idea中运行maven项目 如果出现idea warning:java源值已过时将在未来所有发行版中删除&#xff0c;详见如下截图所示&#xff1a; 注意&#xff1a;jdk8 要解决这个警告需要设置3个地方 首先打开File->Project Structure中的Project&#xff0c;将SDK和language level都设…

Java学习笔记(15)

JDK7前时间相关类 Date时间类 Simpledateformat Format 格式化 Parse 解析 默认格式 指定格式 EE&#xff1a;表示周几 Parse&#xff1a;把字符串时间转成date对象 注意&#xff1a;创建对象的格式要和字符串的格式一样 Calendar日历类 不能创建对象 Getinstance 获取当…

Python笔记|字符串合并、切片、索引

一、合并 字符串可以用 合并&#xff08;粘到一起&#xff09;&#xff0c;也可以用 * 重复&#xff1a; >>> 3 * un ium unununium 相邻的两个或多个字符串字面值&#xff08;引号标注的字符&#xff09;会自动合并&#xff1a; >>> Py thon Python …

蓝桥杯每日一题 走迷宫bfs 超超详细解释!!!

昨天学习了bfs的基本概念&#xff0c;今天来做一道经典习题练练手吧&#xff01; bfs常用的两类题型 1.从A出发是否存在到达B的路径(dfs也可) 2.从A出发到B的最短路径&#xff08;数小:<20才能用dfs&#xff09; 遗留的那个问题的答案- 题目&#xff1a;走迷宫 答案&…

【Java刷题篇】串联所有单词的子串

这里写目录标题 &#x1f4c3;1.题目&#x1f4dc;2.分析题目&#x1f4dc;3.算法原理&#x1f9e0;4.思路叙述✍1.进窗口✍2.判断有效个数✍3.维护窗口✍4.出窗口 &#x1f4a5;5.完整代码 &#x1f4c3;1.题目 力扣链接: 串联所有单词的子串 &#x1f4dc;2.分析题目 阅…

力扣L14--- 415.字符串相加(JAVA版)-2024年3月17日

1.题目 2.知识点 注1&#xff1a;你可以使用Integer.parseInt()或Double.parseDouble()等方法将字符串转换为整数或浮点数。 public class Main {public static void main(String[] args) {String str "123";int num Integer.parseInt(str);System.out.println(…