JS数据类型转换及普通类型和对象的区别

JS中有七种数据类型,往往需要用到数据类型转换,简单总结如下:

一、转字符串
其他数据类型转字符串,可以用toString(),数值、布尔值、对象都可以使用该方法转为字符串类型,其中对象会转化成[object,Object]。null、undefined调用该方法会报错。比较简便的方法是直接加上一个空字符串'',比如1+''=='1'。此外还有String()方法。+''和String()可以将null和undefined分别转换成'null'和'undefined'。

二、转布尔值
其他数据转布尔值,除了五种特例,其余全为真true。
这五种特例是:
1、数值0(包括+0和-0)。
2、NaN。
3、null。
4、undefined。
5、''(空字符串)。

三、转数值
转数值的几个方法:
1、Number();
2、parseInt();取整数。注意此函数有第二个参数,为进制,默认为十进制。
3、parseFloat();取浮点数。
4、简便方法-0或者取正+。

四、普通类型和对象的区别
对象是普通类型的集合,对象是一对对无序排列的键值对,它的保存方式和普通类型不同。普通类型保存在栈内存中,对象的地址保存在栈内存中,其实体(我这么理解的~)保存在堆内存中。将一个对象赋值(a)给另一个对象(b),仅仅是将地址赋给了b,两者在栈内存中都保存了同一个地址,指向堆内存的一个实体,此时改变a或者b的任意一个属性,a、b两者的属性都将改变。但如果重新给a或b赋值,被赋值的那个保存的地址改变,未被重新赋值的对象不受影响。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 9,720评论 0 13
  • 1.ios高性能编程 (1).内层 最小的内层平均值和峰值(2).耗电量 高效的算法和数据结构(3).初始化时...
    欧辰_OSR阅读 30,000评论 8 265
  • 渑池的春天是凌乱的。每年这个时候,我家的衣柜必定是敞开着,春夏秋冬四时服装挨个排列,等待我们随时调换。今年偷个懒,...
    爱如你我阅读 3,073评论 1 4
  • 有些人天生就有演戏的细胞,即使她自己从来没有意识到。 据说,当初秀兰邓波儿被导演看中,想让她去演戏的时候,她竟然钻...
    钱多多的时空站阅读 3,318评论 0 2
  • 觉察你的不安全感。 觉察你的分崩离析。 觉察那些要把你吞噬掉的不确定性。 你身在此刻, 而此刻即是所有。 你的心会...
    绿箩小姐阅读 1,004评论 0 0

友情链接更多精彩内容