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

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.lryc.cn/news/178318.html

相关文章:

  • 计算机网络 实验二 交换机的基本配置
  • Tor网络的全面解析
  • 数据集笔记:2015上海地铁一卡通数据
  • 【小沐学C++】C++ 基于Premake构建工程项目(Windows)
  • Linux shell编程学习笔记2:我是谁 | who am i ?
  • 移动端和PC端对比【组件库+调试vconsole +单位postcss-pxtorem+构建vite/webpack+可视化echarts/antv】
  • maven多模块依赖包程序包xxx不存在
  • iOS17.0.2更新修复iPhone 15系列机型数据迁移问题,附新机快速数据迁移办法!
  • 面试题库(八):docker和linux
  • 深入理解传输层协议:TCP与UDP的比较与应用
  • Python-表白小程序练习
  • 浅谈ChatGPT附免费体验地址
  • 队列的使用以及模拟实现(C++版本)
  • RV1126笔记四十一:RV1126移植LIVE555
  • stable diffusion模型评价框架
  • 电脑开机慢问题的简单处理
  • SpringMVC-Rest风格
  • WebGL实现透明物体(α混合)
  • RecycleView刷新功能
  • 目标检测如何演变:从区域提议和 Haar 级联到零样本技术
  • 聊一聊国内大模型公司,大模型面试心得、经验、感受
  • 【分布式微服务】feign 异步调用获取不到ServletRequestAttributes
  • c#编程里面最复杂的技术问题有哪些
  • github代码提交过程详细介绍
  • Linux -- 使用多张gpu卡进行深度学习任务(以tensorflow为例)
  • Mendix中的依赖管理:npm和Maven的应用
  • 自定义hooks之useLastState、useSafeState
  • 前端判断: []+[], []+{}, {}+[], {}+{}
  • el-input-number/el-input 实现实时输入数字转换千分位(失焦时展示千分位)
  • 一篇博客学会系列(2)—— C语言中的自定义类型 :结构体、位段、枚举、联合体