JS中字符的默认转换

2018-08-30  本文已影响0人  imjcw

目的

前言

一直没有考虑过一个问题,那就是 js 中字符的转换。

由于在做 tab 切换时,遇到了瓶颈,于是我就打开了电脑中陈放了很久的 JavaScript 视频。没想到,这一举动,让我对一直没有注意的字符默认转换有了一个深入的了解。

字符的默认转换—— + 和 – 的区别

一个小例子:

var a = '4';
var b = '2';
alert(a - b);

弹出的是什么呢?答案是 2,一个正确计算过的值。

这就是一个很明显的字符默认转换的例子。一开始,定义 ab 两个字符,那么很显然,ab 的值是字符型。而我们了解的就是,字符是不可相加减的。那就说明了一件事:JavaScript 自动的将字符转换成了整型。

那么,有人就会有疑问了,为什么我用 + 时,JavaScript 没有将字符自动转换为整型呢?

是的,肯定不会转换的,一转换就乱套了,程序不是人,不知道什么时候该转换,什么时候又不该转换。

+JavaScript 中有两种功能:1、字符串的连接;2、数字相加。

想想,在你想要字符串相连的时候,JavaScript 给你转了格式,在你想要相加的时候,JavaScript 没有任何动作了。我想,你肯定会疯的。

所以,为了避免这种情况的发生,JavaScript 默认的认为,做减法时,默认转换为整型,而做加时,默认使用字符串连接。

感悟

我们不能想当然的认为,一些事就应该那样,很多事会出乎意料的发展,我们能做的,或者说,我们应该做的,就是将事情细节化,争取做到更好。

不求最好,但求更好。

上一篇 下一篇

猜你喜欢

热点阅读