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

【JavaScript】JavaScript 运算符 ① ( 运算符分类 | 算术运算符 | 浮点数 的 算术运算 精度问题 )

文章目录

  • 一、JavaScript 运算符
    • 1、运算符分类
    • 2、算术运算符
    • 3、浮点数 的 算术运算 精度问题





一、JavaScript 运算符



1、运算符分类


在 JavaScript 中 , 运算符 又称为 " 操作符 " , 可以实现 赋值 = , 比较 > < , 算术运算 +-*/ 等功能 , 运算符功能主要分为以下几类 :

  • 算术运算符
  • 比较运算符
  • 逻辑运算符
  • 位运算符
  • 赋值运算符

2、算术运算符


JavaScript 算术运算符 用于 执行 算术运算 , 如 : 加 + , 减 - , 乘 * , 除 / , 取余 % , 自增 ++ , 自减 -- 等 ;


取余 运算符 % 最常见的使用场景 , 就是判定 一个数 是否能被 整除 , 如 : 判断 a 是否能被 b 整除 , 直接判断 a % b 是否为 0 即可 ;


代码示例 :

<!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>// 算术运算符示例let a = 5;let b = 2;console.log(a + b); // 输出 : 7  console.log(a - b); // 输出 : 3  console.log(a * b); // 输出 : 10  console.log(a / b); // 输出 : 2.5  console.log(a % b); // 输出 : 1  a++; // 5 自增 后 是 6  b--; // 2 自减 后 是 1  console.log(a); // 输出 : 6  console.log(b); // 输出 : 1</script>
</head><body>
</body></html>

展示效果 :

在这里插入图片描述


3、浮点数 的 算术运算 精度问题


浮点数 的 最高精度 是 小数点后 17 位小数 , 第 17 位 小数 开始 就会出现误差 ;

浮点数 进行算术运算时 , 其精度 远小于 整数 , 浮点数 会有精度误差 , 因此 在 JavaScript 代码中 , 要避免使用 浮点数 进行运算 ;

下面的 浮点数运算时 , 都是 在 第 17 位小数的位置 出现了误差 ;

        // 浮点数算术运算console.log(0.1 + 0.2); // 输出 : 0.30000000000000004console.log(0.1 * 3); // 输出 : 0.30000000000000004

浮点数 0.1 + 0.2 的结果是 0.30000000000000004 , 不等于 0.3 , 在 JavaScript 中 , 不能直接使用 浮点数 进行数值比较 ;


代码示例 :

<!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>// 算术运算符示例// 浮点数算术运算console.log(0.1 + 0.2); // 输出 : 0.30000000000000004console.log(0.1 * 3); // 输出 : 0.30000000000000004// 浮点数 不能 用于 数值比较操作var num = 0.1 + 0.2;console.log(num == 0.3); // 输出 : false</script>
</head><body>
</body></html>

展示效果 :

在这里插入图片描述

相关文章:

【JavaScript】JavaScript 运算符 ① ( 运算符分类 | 算术运算符 | 浮点数 的 算术运算 精度问题 )

文章目录 一、JavaScript 运算符1、运算符分类2、算术运算符3、浮点数 的 算术运算 精度问题 一、JavaScript 运算符 1、运算符分类 在 JavaScript 中 , 运算符 又称为 " 操作符 " , 可以实现 赋值 , 比较 > < , 算术运算 -*/ 等功能 , 运算符功能主要分为以下…...

掘根宝典之C++迭代器简介

简介 迭代器是一种用于遍历容器元素的对象。它提供了一种统一的访问方式&#xff0c;使程序员可以对容器中的元素进行逐个访问和操作&#xff0c;而不需要了解容器的内部实现细节。 C标准库里每个容器都定义了迭代器 迭代器的作用类似于指针&#xff0c;可以指向容器中的某个…...

DP-力扣 120.三角形最小路径和

给定一个三角形&#xff0c;找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。相邻的结点&#xff1a; 下标与上一层结点下标相同或者等于上一层结点下标 1 的两个结点。样例&#xff1a; 例如&#xff0c;给定三角形&#xff1a; [ [2], [3,4], [6,5,7], [4…...

【WEEK3】学习目标及总结【SpringMVC】【中文版】

学习目标&#xff1a; 三周完成SpringMVC入门——第三周 感觉这周很难完成任务了&#xff0c;大概率还会有第四周 学习内容&#xff1a; 参考视频教程【狂神说Java】SpringMVC最新教程IDEA版通俗易懂数据处理JSON交互处理 学习时间及产出&#xff1a; 第三周 MON~FRI 2024.…...

peft模型微调--Prompt Tuning

模型微调&#xff08;Model Fine-Tuning&#xff09;是指在预训练模型的基础上&#xff0c;针对特定任务进行进一步的训练以优化模型性能的过程。预训练模型通常是在大规模数据集上通过无监督或自监督学习方法预先训练好的&#xff0c;具有捕捉语言或数据特征的强大能力。 PEF…...

【算法训练营】周测1

清华大学驭风计划课程链接 学堂在线 - 精品在线课程学习平台 (xuetangx.com) 如果需要答案代码可以私聊博主 有任何疑问或者问题&#xff0c;也欢迎私信博主&#xff0c;大家可以相互讨论交流哟~~ 考题11-1 题目描述 有一个初始时为空的序列&#xff0c;你的任务是维护这个…...

PyTorch Dataset、DataLoader长度

pytorch 可以直接对 Dataset 对象用 len() 求数据集大小&#xff0c;而 DataLoader 对象也可以用 len()&#xff0c;不过求得的是用这个 loader 在一个 epoch 能有几多 iteration&#xff0c;容易混淆。本文记录几种情况的对比。 from torch.utils.data import Dataset, DataL…...

动态IP和静态IP

与静态 IP 地址不同&#xff0c;动态 IP 地址会定期更改。让我们来分析一下&#xff1a; 1. IP 地址基础知识&#xff1a; * IP 地址是一个数字标签&#xff0c;用于唯一标识网络上的每个设备。 * 当设备通过网络通信时&#xff0c;数据会在它们之间来回传输。每个数据包都标有…...

中电金信:技术实践|Flink维度表关联方案解析

导语&#xff1a;Flink是一个对有界和无界数据流进行状态计算的分布式处理引擎和框架&#xff0c;主要用来处理流式数据。它既可以处理有界的批量数据集&#xff0c;也可以处理无界的实时流数据&#xff0c;为批处理和流处理提供了统一编程模型。 维度表可以看作是用户来分析数…...

HQL 55 题【持续更新】

前言 今天开始为期一个多月的 HQL 练习&#xff0c;共 55 道 HQL 题&#xff0c;大概每天两道&#xff0c;从初级函数到中级函数。这次的练习不再是基础的 join 那种通用 SQL 语法了&#xff0c;而是引入了更多 Hive 的函数&#xff08;单行函数、窗口函数等&#xff09;。 我…...

lqb省赛日志[8/37]-[搜索·DFS·BFS]

一只小蒟蒻备考蓝桥杯的日志 文章目录 笔记DFS记忆化搜索 刷题心得小结 笔记 DFS 参考 深度优先搜索(DFS) 总结(算法剪枝优化总结) DFS的模板框架: function dfs(当前状态){if(当前状态 目的状态){}for(寻找新状态){if(状态合法){vis[访问该点]&#xff1b;dfs(新状态);?…...

uni app 钓鱼小游戏

最近姑娘喜欢玩那个餐厅游戏里的钓鱼 &#xff0c;经常让看广告&#xff0c;然后就点点点... 自己写个吧。小鱼的图片自己搞。 有问题自己改&#xff0c;不要私信我 <template><view class"page_main"><view class"top_linear"><v…...

openssl3.2 - note - Decoders and Encoders with OpenSSL

文章目录 openssl3.2 - note - Decoders and Encoders with OpenSSL概述笔记编码器/解码器的调用链OSSL_STORE 编码器/解码器的名称和属性OSSL_FUNC_decoder_freectx_fnOSSL_FUNC_encoder_encode_fn官方文档END openssl3.2 - note - Decoders and Encoders with OpenSSL 概述 …...

分享几个 Selenium 自动化常用操作

最近工作会用到selenium来自动化操作一些重复的工作&#xff0c;那么在用selenium写代码的过程中&#xff0c;又顺手整理了一些常用的操作&#xff0c;分享给大家。 常用元素定位方法 虽然有关selenium定位元素的方法有很多种&#xff0c;但是对于没有深入学习&#xff0c;尤…...

【Python】【数据类型】List (列表) 的常见操作

1. 创建 使用内置函数list()将字符串创建为列表 list1 [a, b, c, d] print(list1 , list1) # list1 [a, b, c, d] list1 list(abcd) print(list1) # [a, b, c, d]使用列表推导式创建列表 list1 [x for x in range(1, 10)] print(list1) # [1, 2, 3, 4, 5, 6, 7, 8, 9]多…...

【C语言】病人信息管理系统

本设计实现了一个病人信息管理系统,通过链表数据结构来存储和操作病人的信息。用户可以通过菜单选择录入病人信息、查找病人信息、修改病人信息、删除病人信息、查看所有病人信息和查看专家信息等操作,还可以根据病人的科室、姓名、性别和联系方式进行查找,以及支持修改病人…...

Java Spring Boot 接收时间格式的参数

报错 JSON parse error: Cannot deserialize value of type java.time.LocalDateTime from String “2024-03-14 12:30:00”: Failed to deserialize java.time.LocalDateTime: (java.time.format.DateTimeParseException) Text ‘2024-03-14 12:30:00’ could not be parsed a…...

【C++】实现红黑树

目录 一、认识红黑树1.1 概念1.2 定义 二、实现红黑树2.1 插入2.2 与AVL树对比 一、认识红黑树 1.1 概念 红黑树是一个二叉搜索树&#xff0c;与AVL树相比&#xff0c;红黑树不再使用平衡因子来控制树的左右子树高度差&#xff0c;而是用颜色来控制平衡&#xff0c;颜色为红色…...

爬虫(六)

复习回顾: 01.浏览器一个网页的加载全过程1. 服务器端渲染html的内容和数据在服务器进行融合.在浏览器端看到的页面源代码中. 有你需要的数据2. 客户端(浏览器)渲染html的内容和数据进行融合是发生在你的浏览器上的.这个过程一般通过脚本来完成(javascript)我们通过浏览器可以…...

最长连续序列 - LeetCode 热题 3

大家好&#xff01;我是曾续缘&#x1f49d; 今天是《LeetCode 热题 100》系列 发车第 3 天 哈希第 3 题 ❤️点赞 &#x1f44d; 收藏 ⭐再看&#xff0c;养成习惯 最长连续序列 给定一个未排序的整数数组 nums &#xff0c;找出数字连续的最长序列&#xff08;不要求序列元素…...

保姆级教程:用Ultralytics库把YOLOv11模型导出成ONNX/TensorRT格式(附参数详解)

保姆级教程&#xff1a;用Ultralytics库把YOLOv11模型导出成ONNX/TensorRT格式&#xff08;附参数详解&#xff09; 当你完成YOLOv11模型的训练后&#xff0c;下一步就是将其部署到实际应用中。模型导出是部署的关键环节&#xff0c;直接影响推理性能和硬件兼容性。本文将带你深…...

DAB-DETR目标检测环境配置、DAB-DETR目标检测代跑训练、DAB-DETR目标检测改进创新DAB-DETR目标检测配置:Windows、Ubuntu、Centos、Macos等系统环境

DAB-DETR目标检测环境配置、 DAB-DETR目标检测代跑训练、 DAB-DETR目标检测改进创新 DAB-DETR目标检测配置&#xff1a;Windows、Ubuntu、Centos、Macos等系统环境&#xff0c;如果电脑拥有显卡&#xff0c;可配置GPU版本环境。 DAB-DETR目标检测代跑训练、&#xff1a;可支持训…...

CnOpenData 沪市IPO发行文件-B来源

IPO(Initial Public Offing)&#xff0c;即首次公开募股&#xff0c;是指一家企业(发行人)第一次将它的股份向公众出售。资本市场是现代金融体系的核心&#xff0c;是企业最高效的融资渠道和最强大的资本运作平台&#xff0c;IPO作为公司登陆资本市场的唯一路径&#xff0c;将使…...

2025届毕业生推荐的十大AI辅助论文工具解析与推荐

Ai论文网站排名&#xff08;开题报告、文献综述、降aigc率、降重综合对比&#xff09; TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 在开题报告撰写进程当中&#xff0c;人工智能技术能够起到高效辅助功效。其一&#xff0c;凭…...

FF14副本动画跳过插件:5分钟终极配置指南,告别冗长等待

FF14副本动画跳过插件&#xff1a;5分钟终极配置指南&#xff0c;告别冗长等待 【免费下载链接】FFXIV_ACT_CutsceneSkip 项目地址: https://gitcode.com/gh_mirrors/ff/FFXIV_ACT_CutsceneSkip FF14副本动画跳过插件是专为《最终幻想14》国服玩家设计的智能工具&#…...

如何利用 SEO 工具提取网站的外部链接

如何利用 SEO 工具提取网站的外部链接 在当今竞争激烈的网络环境中&#xff0c;外部链接&#xff08;即指向你网站的其他网站的链接&#xff09;已经成为提升网站搜索引擎排名的重要因素。利用 SEO 工具提取网站的外部链接&#xff0c;不仅能帮助你更好地了解你的网站链接情况…...

2026届最火的降重复率工具实际效果

Ai论文网站排名&#xff08;开题报告、文献综述、降aigc率、降重综合对比&#xff09; TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 维普平台针对AIGC技术的引入&#xff0c;制定了严谨的检测规范&#xff0c;在当前学术场景里…...

2026届学术党必备的六大AI辅助论文工具实际效果

Ai论文网站排名&#xff08;开题报告、文献综述、降aigc率、降重综合对比&#xff09; TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 知网在近期对自己的 AIGC 检测服务进行了升级&#xff0c;其目的在于识别存在于论文之中的、…...

DXVK:彻底解决Linux游戏兼容性难题的Vulkan翻译层

DXVK&#xff1a;彻底解决Linux游戏兼容性难题的Vulkan翻译层 【免费下载链接】dxvk Vulkan-based implementation of D3D8, 9, 10 and 11 for Linux / Wine 项目地址: https://gitcode.com/gh_mirrors/dx/dxvk 你是否曾经因为心爱的Windows游戏无法在Linux上运行而感到…...

基于STM32LXXX的无线收发芯片(CMT2300A-EQR)应用程序设计

一、简介: CMT2300A是一款超低功耗,高性能,适用于各种127至 1020 MHz无线应用的OOK,(G)FSK射频收发器。它是 CMOSTEK NextGenRFTM射频产品线的一部分,这条产品线 包含完整的发射器,接收器和收发器。CMT2300A的高集成 度,简化了系统设计中所需的外围物料。高达+20 dBm及-…...