JavaScript系列从入门到精通系列第六篇:JavaScrip当中的运算符,主要涉及JavaScript当中的六大数据类型的四则运算

文章目录

前言

一:算数运算符

1:Number类型的四则运算

2:其他数据类型的四则运算

(一):加法运算

(二):减法运算

3:乘法运算

4:除法运算

5:取模运算


 

前言

        运算符也叫操作符。通过运算符对一个或者多个值进行运算,并获取结果。typeOf a就是运算符,获取一个值的类型。

var result = 123;
console.log(typeOf result);//number

        将该值的类型以字符串的形式返回。number,string,boolean,undefined,object。typeOf运算符返回的值是一个字符串。

一:算数运算符

1:Number类型的四则运算

        算数运算符就是+-*/%,运算符不会对原变量进行修改。只会将计算完毕的结果返回。这个真的没有什么好说的,四则运算放之四海而皆准,到哪里都是这么算!

2:其他数据类型的四则运算

(一):加法运算

        当对非Number类型的数据进行四则运算时,首先会将这些数据类型转换为Number类型,然后在进行四则运算。这里边,除了字符串的加法。

var result = true + false;
console.log(result);//1
var result = null + 2;
console.log(result);//NaN
var result = 2+NaN;
console.log(result);//NaN

        任何值和NaN进行四则运算都是NaN.

var result = "123"+"456";
console.log(result);//123456

        两个字符串相加的话,本质上起的是拼接的作用。也就是在我们的+运算下,如果是对两个字符串进行操作,他起的是拼接的操作。

var result = "您好"+"大帅哥";
console.log(result);//您好大帅哥
var result = "123"+1;
console.log(result);//1231

        任何一个值和字符串相加,都必须准换为字符串然后拼接。

var result = true + "hello";
console.log(result);//truehello
var c = 123;
c = c + "";
console.log(tyoeOf c);//string

        这样有发现了一种可以转换为String类型的方法。当然,这种本质上也是调用了String(),只不过这么写更简单一些。

var c = 123;
console.log("c = " + c);
var result = 1 +2 + "3";
console.log(result);//33

        这个要特别注意。最终结果是33

var result = "1" + 2 + 3;
console.log(result);//123

总结一下:

        加法可以对两个值记性加法运算,并将结果返回。

        如果对两个字符串进行加法运算,会将两个字符串拼接进行返回。

        任何值和字符换进行加法运算,都会先转换为字符串,然后进行拼接。

(二):减法运算

        除了加法中跟字符串相加的那种场景,其余的都是转换为Number类型在进行运算。

var result = 100 - 5;
console.log(result); //95
var result = 100 - true ;
console.log(result); // 99
var result = 100 - "1";
console.log(result);//99

        足以看到,只有字符串的加法是特殊的,其余的都是转成Number类型在进行运算。

3:乘法运算

        只有字符串的加法是特殊的,其余的都是转成Number类型在进行运算。

var result = 2 * "2";
console.log(result);//4
var result = 2 * undefined;
console.log(result);//NaN
var result = 2 * null;
console.log(result);//NaN

4:除法运算

        只有字符串的加法是特殊的,其余的都是转成Number类型在进行运算。

var result = 2 / "2";
console.log(result);//1
var result = 4 / "2";
console.log(result);//2
var result = 3 / "2";
console.log(result);//1.5

var result = "123" / 1;
console.log(result);//123

        通过这种方式,可以完成因式类型转换,变成Number类型 ,作用和Number类型一致,但是更加简便

5:取模运算

        只有字符串的加法是特殊的,其余的都是转成Number类型在进行运算。取模就是取余数。

var result = 2 % "2";
console.log(result);//0
var result = 9 % "4";
console.log(result);//1

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HarmonyOS之 开发环境搭建

一 鸿蒙简介: 1.1 HarmonyOS是华为自研的一款分布式操作系统,兼容Android,但又区别Android,不仅仅定位于手机系统。更侧重于万物物联和智能终端,目前已更新到4.0版本。 1.2 HarmonyOS软件编程语言是ArkTS&#xff0c…

基于springboot+vue的高校专业实习管理系统

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…

如何在 Excel 中计算日期之间的天数

计算两个日期之间的天数是 Excel中的常见操作。无论您是规划项目时间表、跟踪时间还是分析一段时间内的趋势,了解如何在 Excel 中查找日期之间的天数都可以提供强大的日期计算功能。 幸运的是,Excel 提供了多种简单的方法来获取两个日期之间的天数。继续…

ARM Cortex-M内核中系统堆栈

文章目录 有无OS的栈结构区别:裸机的任务栈结构带FreeRTOS操作系统的任务栈 ARM的寄存器有哪些特殊寄存器有哪些 关于FreeRTOS中的SP寄存器栈操作【压栈与弹栈的操作】一般函数嵌套调用时sp指针的变化Cortex-M内核的MSP与PSP作用 有无OS的栈结构区别: 裸…

微信店铺小程序开通的效果是什么

微信已经成为众多商家经营的主要场景,随着互联网电商深入,对经营者来说每天线上分享产品/服务/门店信息等已经成为日常,但为了打造品牌及解决传统线下经营困境和线上混乱的信息集、客户便捷触达提升商家效率等难题。 各行业/企业商家都在积极…

基于SpringBoot的社区医院信息平台

目录 前言 一、技术栈 二、系统功能介绍 患者信息管理 护士信息管理 医生信息管理 药品管理员管理 患者添加 安排检查 完成注射列表 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 随着信息技术在管理上越来越深入而广泛的应用,管理信息系…

Leetcode刷题笔记--Hot51-60

1--环形链表II 主要思路: 快慢指针,快指针每次走两步,慢指针每次走一步; 第一次相遇时,假设慢指针共走了 f 步,则快指针走了 2f 步; 假设起点到环入口结点的长度为 a(不包括入口结点…

基于springboot+vue的华山旅游网(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…

[管理与领导-102]:经营与管理的关系:攻守关系;武将文官关系;开疆拓土与守护城池的关系;战斗与练兵的关系;水涨船高,水落船低的关系。

目录 前言: 一、手中拿着锤子,一切看起来都像钉子 1.1 企业经营中过渡强调管理的表现? 1.2 企业经营中过渡强调管理的误区(背后深层次的原因) 二、无知者的无畏,独断者的自high 2.1 企业经营中过度忽律管理的表…

在线商城项目EShop【ListView、adapter】

要求如下: 1、创建在线商城项目EShop; 2、修改布局文件activity_main.xml,使用LineaLayout和ListView创建商品列表UI; 3、创建列表项布局list_item.xml,设计UI用于显示商品图标、名称和价格信息; 4、创…

能跑通的mmdet3d版本

能跑通的mmdet3d版本 1.0版本 2.0版本

ArrayList常见面试题

简介 ArrayList是我们开发中非常常用的数据存储容器之一,其底层是数组实现的,我们可以在集合中存储任意类型的数据,ArrayList是线程不安全的,非常适合用于对元素进行查找,效率非常高。 线程安全性 对ArrayList的操作…

Node.js环境安装与服务设置,结合内网穿透随时随地公网访问!

文章目录 前言1.安装Node.js环境2.创建node.js服务3. 访问node.js 服务4.内网穿透4.1 安装配置cpolar内网穿透4.2 创建隧道映射本地端口 5.固定公网地址 前言 Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台运行环境。Node.js 由 OpenJS Foundation&#xff0…

Hadoop的HDFS高可用方案

一、Hadoop高可用简介 Hadoop 高可用 (High Availability) 分为 HDFS 高可用和 YARN 高可用,两者的实现基本类似,但 HDFSNameNode 对数据存储及其一致性的要求比 YARN ResourceManger 高得多,所以它的实现也更加复杂 1、HDFS系统高可用简介…

【PowerShell】PowerShell的Core版本的额外配置

在PowerShell 7.1 安装完成后,默认情况下打开PowerShell 会直接进入到系统内置的PowerShell,如果希望通过远程连接或者PowerShell Web Access 进入到PowerShell 7环境的界面,就需要进行环境的再配置才能实现PowerShell 7.1 的环境连接。需要为外部的环境提供连接的话需要按照…

linux安装配置 flume

目录 一 解压安装包 二 配置部署 (1)修改配置 (2)下载工具 (3)创建配置文件 (4)启动监听测试 (5)flume监控文件 一 解压安装包 这里提供了网盘资源 链…

【计算机基础】让我们重新认识一下Visual Stduio及其操作,知识点汇总!!

📢:如果你也对机器人、人工智能感兴趣,看来我们志同道合✨ 📢:不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852】 📢:文章若有幸对你有帮助,可点赞 👍…

iOS加固保护技术:保护你的iOS应用免受恶意篡改

目录 转载:开始使用ipaguard 前言 下载ipa代码混淆保护工具 获取ipaguard登录码 代码混淆 文件混淆 IPA重签名与安装测试 转载:开始使用ipaguard 前言 iOS加固保护是直接针对ios ipa二进制文件的保护技术,可以对iOS APP中的可执行文件…

ARMv8 cache的包含策略inclusive 和 exclusive之间的区别以及Cortex-A55示例详解

Inclusive 和 Exclusive 一, 什么是cache的inclusive 和 exclusive二,Inclusive 和 Exclusive cache示例2.1 Inclusive cache2.2 Exclusive cache 三, inclusive cache和 exclusive cache的比较3.1 cache coherency3.2 miss rate3.3 cache ca…

马尔可夫链预测 (Markov Chain)

一、人寿保险案例(两状态) 人寿保险公司把人的健康状态分为健康和疾病两种,以一年为一个时段,研究健康状态的转变。假设对某一年龄段的人来说,今年健康,明年继续保持健康的概率为0.8,即明年转为疾病的概率…