JavaScript中内置对象分类总结

JavaScript中内置对象分类总结 JavaScript内置对象可分为多种类型原始值包装对象String/Number/Boolean等集合对象Array/Map/Set等日期时间对象Date数学计算对象Math文本处理对象RegExp结构化数据处理对象JSON控制抽象对象Promise/Generator等错误处理对象Error及其子类反射代理对象Reflect/Proxy国际化对象Intl全局对象console/globalThis等。这些内置对象提供了JavaScript的核心功能涵盖数据处理、数学运算、异步编程等常见开发需求通过其特有的方法和属性帮助开发者高效完成各种编程任务。JavaScript 中的内置对象JavaScript 提供了丰富的内置对象可以分为以下几大类一、原始值包装对象这些是原始类型的对象包装器String- 字符串操作new String(hello) hello.length // 自动包装Number- 数字操作new Number(123) Number.MAX_VALUEBoolean- 布尔值操作new Boolean(true)BigInt- 大整数BigInt(9007199254740991)Symbol- 唯一标识符Symbol(description)二、集合对象Object- 所有对象的基类Array- 数组操作Map- 键值对集合Set-值的集合无重复WeakMap- 弱引用版本的 MapWeakSet- 弱引用版本的 SetTypedArray- 类型化数组如 Int8Array, Uint8Array 等三、日期和时间Date- 日期和时间操作new Date() Date.now()四、数学计算Math- 数学常量和函数静态对象Math.PI Math.random() Math.floor()五、文本处理RegExp- 正则表达式new RegExp(pattern, flags) /pattern/flags六、结构化数据JSON- JSON 解析和序列化JSON.parse() JSON.stringify()ArrayBuffer- 二进制数据缓冲区SharedArrayBuffer- 共享内存缓冲区DataView- 缓冲区视图JSON.parse() JSON.stringify()特性JSON.parse()JSON.stringify()主要功能将JSON 字符串解析为JavaScript 对象将JavaScript 对象转换为JSON 字符串输入类型字符串 (String)对象、数组、基本类型 (Object, Array, Primitive)输出类型JavaScript 对象 (Object, Array, etc.)字符串 (String)方向反序列化 (Deserialization): String → Object序列化 (Serialization): Object → String常见用途接收服务器响应数据、读取配置文件、从 localStorage 获取数据发送数据给服务器、将数据存入 localStorage、打印日志语法示例const obj JSON.parse(jsonString);const str JSON.stringify(obj);可选参数reviver: 一个函数用于在返回前转换/过滤结果1.replacer: 数组或函数用于筛选/转换属性2.space: 数字或字符串用于格式化缩进错误处理如果字符串格式无效抛出SyntaxError通常不会抛出错误但会忽略无法序列化的值如undefined,function,symbol循环引用不涉及输入是纯文本如果对象存在循环引用抛出TypeError: Converting circular structure to JSON特殊值处理解析null,true,false, 数字, 字符串等标准 JSON 值undefined,function,symbol会被忽略对象中或转为null数组中NaN,Infinity转为null日期对象解析后仍然是字符串需手动转为Date对象自动调用.toJSON()方法转为 ISO 8601 格式的字符串七、控制抽象对象Promise- 异步编程Generator- 生成器函数GeneratorFunction- 生成器函数构造器AsyncFunction- 异步函数Iterator- 迭代器Iterable- 可迭代对象八、错误处理Error- 基础错误对象EvalErrorRangeErrorReferenceErrorSyntaxErrorTypeErrorURIErrorAggregateError九、反射和代理Reflect- 反射 APIProxy- 代理对象十、国际化对象Intl- 国际化 API 的命名空间Intl.CollatorIntl.DateTimeFormatIntl.ListFormatIntl.NumberFormatIntl.PluralRulesIntl.RelativeTimeFormat等等十一、其他全局对象globalThis- 全局 thisconsole- 控制台输出decodeURI()/encodeURI()- URI 编解码decodeURIComponent()/encodeURIComponent()- URI 组件编解码eval()- 执行字符串代码isFinite()- 判断有限数isNaN()- 判断 NaNparseFloat()/parseInt()- 字符串解析undefined- 未定义值null- 空值使用示例// 数组操作 const arr [1, 2, 3]; arr.map(x x * 2); // Promise 异步 Promise.resolve(success) .then(console.log); // Map 和 Set const map new Map(); map.set(key, value); const set new Set([1, 2, 3]); // 日期 const now new Date(); console.log(now.toLocaleDateString()); // 正则表达式 const regex /[a-z]/g; hello.match(regex); // 数学计算 Math.floor(Math.random() * 100);这些内置对象构成了 JavaScript 的核心功能每个都提供了特定的方法和属性来帮助我们完成各种编程任务。JavaScript 内置对象的分类总结表格类别对象名称描述常用方法/属性示例原始值包装对象String字符串操作length,charAt(),substring(),split()Number数字操作toFixed(),toPrecision(),MAX_VALUEBoolean布尔值操作toString(),valueOf()BigInt大整数BigInt(),toString()Symbol唯一标识符Symbol(),for(),keyFor()集合对象Object所有对象的基类keys(),values(),assign(),create()Array数组操作map(),filter(),reduce(),push()Map键值对集合set(),get(),has(),delete()Set值的集合无重复add(),has(),delete(),sizeWeakMap弱引用版本的 Mapset(),get(),has(),delete()WeakSet弱引用版本的 Setadd(),has(),delete()TypedArray类型化数组Int8Array,Uint8Array,Float32Array等日期和时间Date日期和时间操作now(),getDate(),toLocaleDateString()数学计算Math数学常量和函数PI,random(),floor(),max(),sin()文本处理RegExp正则表达式test(),exec(),match(),replace()结构化数据JSONJSON 解析和序列化parse(),stringify()ArrayBuffer二进制数据缓冲区byteLength,slice()SharedArrayBuffer共享内存缓冲区byteLength,slice()DataView缓冲区视图getInt8(),setInt8(),getFloat32()控制抽象Promise异步编程then(),catch(),finally(),all()Generator生成器函数next(),return(),throw()GeneratorFunction生成器函数构造器function*语法AsyncFunction异步函数async function语法Iterator迭代器next(),Symbol.iteratorIterable可迭代对象Symbol.iterator方法错误处理Error基础错误对象message,name,stackEvalErroreval() 相关错误继承自 ErrorRangeError范围错误继承自 ErrorReferenceError引用错误继承自 ErrorSyntaxError语法错误继承自 ErrorTypeError类型错误继承自 ErrorURIErrorURI 处理错误继承自 ErrorAggregateError多个错误聚合继承自 Error反射和代理Reflect反射 APIapply(),construct(),get(),set()Proxy代理对象new Proxy(target, handler)国际化Intl国际化命名空间DateTimeFormat,NumberFormatIntl.Collator字符串比较compare()Intl.DateTimeFormat日期时间格式化format()Intl.ListFormat列表格式化format()Intl.NumberFormat数字格式化format()Intl.PluralRules复数规则select()Intl.RelativeTimeFormat相对时间格式化format()全局对象/函数globalThis全局 this跨环境访问全局对象console控制台输出log(),error(),warn(),table()decodeURI/encodeURIURI 编解码decodeURI(),encodeURI()decodeURIComponent/encodeURIComponentURI 组件编解码decodeURIComponent(),encodeURIComponent()eval()执行字符串代码eval(2 2)isFinite()判断有限数isFinite(42)isNaN()判断 NaNisNaN(NaN)parseFloat/parseInt字符串解析parseFloat(3.14),parseInt(42)undefined未定义值原始值null空值原始值快速参考表使用场景推荐的内置对象字符串处理String, RegExp数组操作Array键值对存储Object, Map去重集合Set数学计算Math日期处理Date异步编程Promise错误处理Error 及其子类JSON 数据JSON国际化Intl 对象二进制数据ArrayBuffer, TypedArray调试输出console对象拦截Proxy反射操作Reflect使用频率统计高频使用Object, Array, String, Number, Math, Date, JSON, Promise, console 中频使用RegExp, Error, Map, Set, Symbol, BigInt 低频使用WeakMap, WeakSet, TypedArray, Proxy, Reflect, Intl 对象这个表格结构清晰便于快速查阅和比较各个内置对象的用途和特性。