首页 > web前端 > js教程 > 正文

javascript数据类型有哪些_如何进行类型转换?

紅蓮之龍
发布: 2025-12-19 21:26:02
原创
447人浏览过
JavaScript有7种原始类型(string、number、boolean、null、undefined、symbol、bigint)和1种引用类型(object),类型转换分显式(如String()、Number())和隐式(如==、+运算符)两类,需注意隐式转换易引发bug。

javascript数据类型有哪些_如何进行类型转换?

JavaScript 有 7 种原始(primitive)数据类型和 1 种引用(object)类型。类型转换分隐式转换(自动发生)和显式转换(手动调用),理解它们的规则能避免常见 bug。

七种原始类型

原始类型是不可变的、按值传递的基本数据单元:

  • string:如 "hello"`world`
  • number:如 423.14NaNInfinity
  • boolean:只有两个值:truefalse
  • null:表示“空值”,是独立类型(但 typeof null 返回 "object",属历史遗留 bug)
  • undefined:变量声明未赋值、函数无返回值时的默认值
  • symbol(ES6):唯一且不可变的标识符,常用于对象属性键
  • bigint(ES2020):表示任意精度整数,如 123n

一种引用类型:object

除原始类型外,其余都是 object 类型的实例,包括:

  • 普通对象:{ name: "Alice" }
  • 数组:[1, 2, 3](本质是特殊对象)
  • 函数:function() {}(函数也是对象,可添加属性)
  • 日期:new Date()
  • 正则:/abc/g
  • Map、Set、Promise、Error 等内置构造器实例

注意typeof []typeof nulltypeof new Date() 都返回 "object",需用 Array.isArray()Object.prototype.toString.call() 等方式精确判断。

Chatbase
Chatbase

从你的知识库中构建一个AI聊天机器人

Chatbase 117
查看详情 Chatbase

立即学习Java免费学习笔记(深入)”;

显式类型转换方法

主动把值转为目标类型,最安全可控:

  • 转字符串:String(123)(123).toString()(注意 nullundefined 不能用 .toString())、123 + ""
  • 转数字:Number("42")(严格,Number(" 42 ") → 42Number("abc") → NaN)、parseInt("42px") → 42(提取开头整数)、parseFloat("3.14em") → 3.14+"42"(一元加号)
  • 转布尔:Boolean(0)!!"hello"(双非操作符,常用且简洁)

隐式类型转换场景与规则

JavaScript 在特定运算或比较中会自动转换类型,容易出错,需特别留意:

  • == 比较:先尝试类型转换再比较(0 == false → true"0" == false → true)。建议一律使用 ===(全等)避免意外转换
  • + 运算符:任一操作数为字符串,则全部转字符串拼接(1 + "2" → "12");否则转数字相加(1 + [2] → "12",因为 [2].toString() → "2"
  • 逻辑运算符(||、&&、!):会将操作数转布尔值判断(falsy 值包括 false0-00n""nullundefinedNaN
  • if / while / 三元条件:内部对条件表达式执行 ToBoolean 转换

以上就是javascript数据类型有哪些_如何进行类型转换?的详细内容,更多请关注php中文网其它相关文章!

java速学教程(入门到精通)
java速学教程(入门到精通)

java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号