javascript - JavaScript:为什么“1”-“1”会返回 0?
问题描述
我试图在循环后从字符串中减去最后一位,但后来我发现了这个神秘的现象。
当我添加两个数字字符串时,它们会连接:
"1" + "1" // = "11"
但是当我从另一个数字中减去一串数字时,它并没有断定,而是被转换为一个数字:
"11" - "1" // = 10
为什么会这样?减法的结果应该是“1”而不是10吗?有某种一致性不是更好吗?
编辑:这个问题不是下面问题的重复,因为这个问题是询问两个字符串的减法,而不是一个带数字的字符串。
解决方案
减法运算符 (-) 从左侧的数字中减去运算符右侧的数字。
当任一操作数是字符串时,会尝试将字符串转换为数字。
推荐阅读
- arrays - Excel VBA ARRAY 循环到数据库
- javascript - JavaScript https 获取请求
- react-native - 如何在 react-native 中从浏览器向 Android App 传递一些数据
- java - 我的应用程序从后台回调时显示 ArrayIndexOutOfBoundsException
- android - 如何将我的网站深度链接到应用程序?
- node.js - 将当前用户的 ID 获取到 NodeJS 中方法的 URL
- jupyter-notebook - 一个完整的初学者 - 不能安装 Jupyter 笔记本
- scheme - 方案,连续分数,尾递归
- java - Springboot - application-integration.properties 在 src/main/resources 下工作,但不在 src/test/resources 下工作
- css - 自定义动画角度材质选项卡