一、全局对象及数据类型
1. `Object`:作为所有JS对象的基础原型,它提供了一系列用于操作属性的方法如`hasOwnProperty()`, `isPrototypeOf()`等;同时,ECMAScript 6引入了诸如`Object.assign()`(合并源对象到目标对象)以及Reflect API扩展了许多底层能力。
2. 数据类型:
- 简单类型:包括Undefined、Null、Boolean、Number、String。
如使用`typeof`运算符可以检测变量的数据类型;
- 复杂类型:主要包含Objects(含Array, Function等),可通过`.toString.call(value)`更准确地判断一个值的具体构造类型。
二、数组(Array)相关API
- 创建/初始化数组:`new Array([size])`,`[]`
- 遍历方法: `forEach(), map(), filter(), reduce(), find(), some(), every()`等,它们极大地提升了对集合类数据的操作效率和便利性。
- 属性访问与修改:
javascript
var arr = [1, 2, 3];
console.log(arr.length); // 访问元素个数
arr.push(4); // 添加新项至末尾
三、Function 函数相关的API
JavaScript中一切皆是对象,这使得函数也拥有丰富的内部机制和可调用特性:
- 定义方式有多种,例如声明式 function foo(){...} 或表达式形式 let bar = new Function(...)。
- 使用 `.call()` 和 `.apply()` 可以改变函数执行上下文中的 this 指向并传入参数列表进行调用。
- ES6新增箭头函数简化语法并且具有词法作用域的特点,即不绑定自己的this也不形成arguments对象。
四、字符串(Strings)
JavaScript对于字符串类型的处理同样封装了一套完善的API:
- 字符串拼接(`str.concat(otherStr[, ...])`)或模板字面量 (``${expression}``)
- 截取子串 (`str.substring(indexStart[, indexEnd])` / `slice()` )
- 查找匹配字符位置 (`indexOf(searchValue [, fromIndex ])` , `lastIndexOf()` )
五、日期(Date)及相关API
Date 对象允许我们在程序中创建表示特定时间点的对象,并对其进行各种计算和格式化输出:
javascript
let now = new Date(); // 获取当前系统时间戳生成的新date实例
console.log(now.getDate()); // 返回月份中的某天 (1 ~ 31)
now.setDate(now.getDate()+7); // 将日期设置为现在的七日后
六、正则表达式(RegExp)
通过 RegExp 类及其实例提供的测试、搜索和替换模式等功能,我们可以高效完成文本查找与解析任务:
javascript
var regex = /\d+/g; // 匹配数字序列
"Hello World! 123".match(regex); // 输出 ["123"]
以上只是 JavaScript 中一小部分常用的核心API概述,实际上它的内涵远不止于此——还包括错误处理(Error), 数学(Math)模块、JSON.stringify/valueOf 方法实现数据结构转换等诸多内容。理解和掌握好这部分基础知识将大大提升我们的日常编码能力和问题解决速度。而对于现代前端框架或者Node.js后端环境下的实际运用,则会涉及到更多基于原生API之上的抽象层设计,比如异步I/O模型Promise/A+规范,迭代器Generator等等进阶概念和技术方案。不断探索学习JavaScript的基本API能帮助你更好地驾驭这个强大灵活的语言工具箱。