你不知道的JS系列 ( 28 ) - 内置对象
JavaScript 还有一些对象子类型,通常被称为内置对象
String
Number
Boolean
这三个内置对象的名字看起来和简单基础类型一样,实际上它们的关系更复杂
Object
Function
Array
Data
RegExp
Error
这些内置函数可以当作构造函数来使用,从而构造一个对应子类型的新对象
var strPrimitive = 'I am a string'; typeof strPrimitive; // string strPrimitive instanceof String; // false var strObject = new String('I am a string'); typeof strObject; // Object strObject instanceof String; // true // 检查 sub-type 对象 Object.prototype.toString.call(strObject); // [object String]
从代码中可以看到,strObject 是由 String 构造函数创建的一个对象。
原始值 'I am a string' 并不是一个对象,它只是一个字面量,并且是一个不可变的值,如果要在这个字面量上执行一些操作,比如获取长度,访问其中某个字符等,需要将其转换成 String 对象。
var strPrimitive = 'I am a string'; console.log(strPrimitive.length); // 13 console.log(strPrimitive.charAt(3)); // 'm'
可以直接在字面量上访问属性和方法,是因为引擎自动把字面量转换成 String 对象。数字字面量,布尔字面量也是如此
分类:
JavaScript基础
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
2019-03-16 Redux概念简述
2019-03-16 react中使用react-transition-group实现动画
2019-03-16 react中使用css动画效果
2018-03-16 AJAX(三):GET与POST