目录
内置构造函数
在JavaScript中最主要的数据类型有六种
基本数据类型:字符串、数值、布尔、undefined、null
引用类型:对象
其实字符串、数值、布尔等基本数据类型也都有专门的构造函数,这些我们称为包装类型
JS中几乎所有的数据都可以基于构成函数创建
引用类型:Object、Array、RegExp、Date...
包装类型:String、Number、Boolean...
Object
Object是内置的构造函数,用于创建普通对象
通过构造函数创建普通对象:let user = new Object({name: ‘小明’, age: 15})
推荐使用字面量方式创建对象,而不是Object构造函数
三个常用静态方法
三个常用静态方法(静态方法就是只有构造函数Object可以调用的):
- Object.keys() 静态方法:获取对象中的所有属性(键)
例:
let o = {name:‘佩奇’, age: 6}
let arr = Object.keys(o) // 返回对象的所有属性,并且返回是一个数组
console.log(arr) // [‘name’,‘age’]
- Object.values() 静态方法:获取对象中所有属性的值
例:
let arr = Object.values(o) // 返回对象的所有属性的值,并且返回是一个数组
console.log(arr) // [‘佩奇’, 6]
- Object.assign() 静态方法:常用于对象拷贝
例:
let obj = {}
Object.assign(obj,o) // 拷贝对象,把o拷贝给obj
console.log(obj) // {name:‘佩奇’, age: 6}
经常使用的场景:给对象添加属性
例:
Object.assign(o, {gender:‘女’})
console.log(o) // {name:‘佩奇’, age: 6, gender:‘女’}
Array
Array是内置的构造函数,用于创建数组
例:
let arr = new Array(3,5)
console.log(arr) // [3,5]
创建数组建议使用字面量创建,不用Array构造函数创建
数组常见实例方法
核心方法
方法 | 作用 | 说明 |
forEach | 遍历数组 | 不返回,用于不改变值,经常用于查找打印输出数组 |
filter | 过滤数组 | 筛选数组元素,并生成新数组 |
map | 迭代数组 | 返回新数组,新数组中的元素是处理之后的值,经常用于处理数据 |
reduce | 累计器 | 返回函数累计处理的结果,经常用于求和运算 |
其他方法
- 实例方法join():数组元素拼接为字符串,返回字符串
- 实例方法find():查找元素,返回符合测试条件的第一个数组元素值,如果没有符合条件的则返回undefined
- 实例方法every():检测数组中元素是否都符合指定条件,如果所有元素都通过检测返回true,否则返回false
- 实例方法some():检测数组中的元素是否符合条件,如果数组中有条件满足返回true,否则返回false
- 实例方法concat():合并两个数组,返回生成新的数组
- 实例方法sort():对原数组单元值排序
- 实例方法splice():删除或替换原数组单元
- 实例方法reverse():反转数组
- 实例方法findIndex():查找元素索引值
String
在JavaScript中的字符串、数值、布尔具有对象的使用特征,如具有属性和方法
之所以具有对象特征的原因是字符串、数值、布尔类型数据是JavaScript底层使用Object构造函数“包装”来的,被称为包装类型
常见实例方法
- 实例属性length:用来获取字符串长度
- 实例方法split(‘分隔符’):用来将字符串拆分成数组
- 实例方法substring(需要截取的第一个字符的索引 [,结束的索引号]):用于字符串截取
- 实例方法startsWith(检测字符串 [,检测位置索引号]):检测是否以某个字符开头
- 实例方法includes(搜索的字符串 [,检测位置索引号]):判断一个字符串是否包含在另一个字符串中,根据情况返回true或false
Number
Number是内置的构造函数,用于创建数值
常用方法toFixed()设置保留小数位的长度
例:
let price = 12.345
console.log(price.toFixed(2)) // 12.35 保留两位小数,四舍五入