JavaScript 数字与字符串的加减乘除运

老几次做题懵逼,遇到一大串运算句开始晕哪个打哪个,这次就一次性看透= =,免得再有下一次。

  • JavaScript 数字 number:
    数值始终是 64 位浮点数,整数最大 15位,小数最大 17 位

  • JavaScript 字符串是引号中的零个或多个字符:
    可使用单引号 | 双引号

注意: 在所有数字运算中, JavaScript 会将字符串转为数字,但是加法会进行级联

/* ➕ */
// 都是 number -> 最后获得 number
console.log(12 + 10); // 22// 都是 string -> 发生级联,最后获得字符串
console.log("12" + "10"); // 1210,字符串级联// number + string | string + number -> 最后获得都是字符串
console.log(12 + "12");           //1212
console.log("12" + 12);          //1212
console.log("apple" + 12 + 10); // apple1210,放大看,实质上本质就是 apple(string) + (12 + 10)(number)// js 是从左到右进行编译的
console.log(12 + 10 + "12"); //2212,先进行数字运算 12 + 10 =22,再进行字符串级联 2212
/* ➖ */// 都是 number -> 最后获得数字
console.log(12 - 10); //2// 都是 string -> 先转化为 number 再进行运算,最后获得数字
console.log("12" - "10"); //2
console.log(typeof ("12" - "10")); // number// number - string | string - number -> number
console.log(12 - "12");          //0,"12" 转化为 number 再进行运算,最后获得数字0
console.log(typeof (12 - "12")); // number
console.log("12" - 12);          // 0,先 "12" 转化为 number 再进行运算,最后获得数字0
console.log(typeof ("12" - 12)); // number
/* ✖ */
// 都是 string -> 先转化为 number 再进行运算,最后获得数字
console.log(12 * 10);          // 120
console.log("12" * "10");          // 120
console.log(typeof ("12" * "10")); // number
console.log(12 * "12");          // 144
console.log(typeof (12 * "12")); // number
console.log("12" * 12);          // 144
console.log(typeof ("12" * 12)); // number
/* / */
// 都是 string -> 先转化为 number 再进行运算,最后获得数字
console.log(12 / 10);          // 1.2
console.log("12" /"10");           // 1.2
console.log(typeof ("12" / "10")); // number
console.log(12 / "12");          // 1
console.log(typeof (12 /"12"));  //number
console.log("12" / 12);          // 1
console.log(typeof ("12" / 12)); //number
/* % */
// 都是 string -> 先转化为 number 再进行运算,最后获得数字
console.log(12 % 10);          // 2
console.log("12" %"10");           // 2
console.log(typeof ("12" % "10")); // number
console.log(12 % "12");          // 0
console.log(typeof (12 %"12"));  //number
console.log("12" % 12);          // 0
console.log(typeof ("12" % 12)); //number

// true 布尔值 在运算时候回转为 1,false 同理会转为 0

console.log(12 + true);   // 13
console.log("12" + true); //12true,字符串级联
console.log(12 - true);    // 11
console.log("12" - true);  // 11
console.log(12 * true);    //12
console.log("12" * true);  // 12
console.log(12 / true);    //12
console.log("12" / true);  //12
console.log(12 % true);    //0
console.log("12" % true);  //0

最后总结

  1. 除开字符串 + 数字的运算,会产生级联,其他情况下会将 String 转为 number 再进行数字运算。
  2. js 运算是从左到右的,所以一步一步来,不要跳步进行运算。

感觉有帮助的话,可以给我点个赞嘛 φ(≧ω≦*)♪~

JavaScript 数字与字符串的加减乘除运算相关推荐

  1. 实现数字型字符串的加法运算

    实现数字型字符串的加法运算 如输入字符串num1="1234", num2="234",输出"1468";num1="1234&q ...

  2. JavaScript数字转字符串,字符串转数字

    //--------------------字符串转数字---------------------------     var s = "234";     //1.纯数字转换 / ...

  3. javascript乘法和加法_JS加减乘除运算

    //加法 Number.prototype.add = function(arg){ var r1,r2,m; try{r1=this.toString().split(".")[ ...

  4. JavaScript 数字转字符串

    // 不定义时123..toString(); // '123' 两个点(123).toString(); // '123'123 + ''; // '123'// 定义时let num = 123; ...

  5. JavaScript数字运算必备库——big.js源码解析

    概述 在我们常见的JavaScript数字运算中,小数和大数都是会让我们比较头疼的两个数据类型. 在大数运算中,由于number类型的数字长度限制,我们经常会遇到超出范围的情况.比如在我们传递Long ...

  6. java中数字作为布尔值_day50 java Script 数字和字符串 布尔值和数组 运算符 条件判断和三元运算...

    上节回顾: day501.前情回顾 CSS属性: float浮动的规则1. 浮动规则: 浮动只控制自己 如果前面的标签也是浮动的,就挨着放 如果前面的标签不浮动,则下方摆放 如果把块级标签设置成浮动, ...

  7. 设计一个计算器,实现0-9数字间的加减乘除运算

    设计一个计算器,实现0-9数字间的加减乘除运算 设计一个计算器,实现0-9数字间的加减乘除运算 提示: (1)采用JavaScript定义加减乘除方法: (2)通过document.getElemen ...

  8. 利用HTML和javaScript实现简单的加减乘除运算

    一.计算方式 计算过程利用下拉菜单进行选择运算方式,输入方式则是输入到from表单的文本框中,代码分为JavaScriptt部分和HTML部分. 二.代码段 (一)JavaScript部分 <s ...

  9. 基于JavaScript的简易计算器(可处理连续加减乘除运算)

    相信大家对于计算器都并不陌生,很多朋友们一定也能完成简易的可以完成加减乘除运算的计算器的制作,那该怎么把简易的计算器美化并且可以完成连续运算,并且可以完成简单的先乘除后加减的动作呢?接下来我们一起来看 ...

最新文章

  1. jquery 替换括号里面内容_EXCEL单元格里提取、删除或替换部分内容
  2. Java 集合系列(4): LinkedList源码深入解析1
  3. MySQL-入门安装
  4. o2 atom(HP rw68xx)系列手机将可以使用Android。
  5. arcgis安装license的问题
  6. 创建win32 dll
  7. 深入解析hostname
  8. mysql备机写binlp_MySQL主从搭建,实现读写分离(基于docker)
  9. hibernate中get方法和load方法的根本区别
  10. maven netty 配置_使用Springboot整合开发Netty(一个表白的小案例)
  11. UIActionSheet的使用
  12. 去阿里面试被问:如果是MySQL引起的CPU消耗过大,你会如何优化?
  13. onload与ready差异
  14. 电子海图通信态势软件设计与实现
  15. 用2008系统安装k3服务器,金蝶K3SQL-Server-2008-R2安装方法介绍
  16. win10微软商店/账号登录一直转圈
  17. logstash grok mysql_logstash -grok插件语法介绍
  18. 使用wine在mac系统上运行windows程序
  19. Qt安装包官方下载地址
  20. 小米android隐藏游戏,MIUI8小米手机开启隐藏选项

热门文章

  1. 图片上传接口的实现 记录一下,方便自己以后查看。
  2. 【自学Java】Java三目运算符
  3. Java中的运算符--三目运算符
  4. HTML5笔记案例结合
  5. 苹果的屏幕录制在哪里_录屏在哪里设置
  6. 二手小米手机价格图2022.2.23
  7. 关于Excel的几个小问题(冻结窗格,自定义填充序列,边界单元格快捷键)
  8. 用AE实现一个文字光晕效果
  9. 企业软文推广如何掌握好新闻发布量
  10. 聊聊在日本买房那些事儿