TS数据类型方法积累
JavaScript内置了很多方法来处理数据,这些方法在处理数据时非常实用,可以大大简化代码并提高可读性。在 TypeScript 中,这些方法同样适用
数组方法
splice(start, deleteCount, ...items)
- 作用: 从数组中添加或删除元素。
- 示例:
nums.splice(2, 1, 100);
从索引 2 开始删除 1 个元素,并插入 100。
slice(start, end)
- 作用: 返回数组的一部分,不会修改原数组。
- 示例:
let subArray = nums.slice(1, 3);
返回从索引 1 到 3(不包括 3)的子数组。
map(callback)
- 作用: 创建一个新数组,其元素是原数组元素经过回调函数处理后的结果。
- 示例:
let doubled = nums.map(x => x * 2);
返回一个新数组,其中每个元素是原数组元素的两倍。
filter(callback)
- 作用: 创建一个新数组,包含通过回调函数测试的所有元素。
- 示例:
let evens = nums.filter(x => x % 2 === 0);
返回一个新数组,包含所有偶数。
reduce(callback, initialValue)
- 作用: 对数组中的每个元素执行回调函数,返回一个累积的结果。
- 示例:
let sum = nums.reduce((acc, x) => acc + x, 0);
返回数组中所有元素的和。
forEach(callback)
- 作用: 对数组中的每个元素执行回调函数,不返回新数组。
- 示例:
nums.forEach(x => console.log(x));
打印数组中的每个元素。
find(callback)
- 作用: 返回数组中第一个通过回调函数测试的元素。
- 示例:
let found = nums.find(x => x > 10);
返回数组中第一个大于 10 的元素。
findIndex(callback)
- 作用: 返回数组中第一个通过回调函数测试的元素的索引。
- 示例:
let index = nums.findIndex(x => x > 10);
返回数组中第一个大于 10 的元素的索引。
some(callback)
- 作用: 测试数组中是否有至少一个元素通过回调函数测试。
- 示例:
let hasEven = nums.some(x => x % 2 === 0);
返回布尔值,表示数组中是否有偶数。
every(callback)
- 作用: 测试数组中的所有元素是否都通过回调函数测试。
- 示例:
let allPositive = nums.every(x => x > 0);
返回布尔值,表示数组中所有元素是否都为正数。
push(item)
- 作用: 在数组末尾添加一个元素。
- 示例:
nums.push(5);
在数组 nums 末尾添加元素 5。
pop()
- 作用: 移除并返回数组的最后一个元素。
- 示例:
let last = nums.pop();
移除并返回数组 nums 的最后一个元素。
shift()
- 作用: 移除并返回数组的第一个元素。
- 示例:
let first = nums.shift();
移除并返回数组 nums 的第一个元素。
unshift(item)
- 作用: 在数组开头添加一个元素。
- 示例:
nums.unshift(0);
在数组 nums 开头添加元素 0。
concat(...items)
- 作用: 合并数组。
- 示例:
let merged = nums.concat([4, 5], [6, 7]);
合并数组 nums 和 [4, 5] 以及 [6, 7]。
indexOf(item)
- 作用: 返回元素在数组中的索引。
- 示例:
let index = nums.indexOf(3);
返回元素 3 在数组 nums 中的索引。
includes(item)
- 作用: 检查数组是否包含某个元素。
- 示例:
let hasThree = nums.includes(3);
检查数组 nums 是否包含元素 3。
sort(compareFunction)
- 作用: 对数组进行排序。
- 示例:
nums.sort((a, b) => a - b);
对数组 nums 进行升序排序。
reverse()
- 作用: 反转数组。
- 示例:
nums.reverse();
反转数组 nums 中的元素顺序。
对象方法
Object.keys(obj)
- 作用: 返回对象自身可枚举属性的数组。
- 示例:
let keys = Object.keys(obj);
返回对象 obj 的所有键的数组。
Object.values(obj)
- 作用: 返回对象自身可枚举属性值的数组。
- 示例:
let values = Object.values(obj);
返回对象 obj 的所有值的数组。
Object.entries(obj)
- 作用: 返回对象自身可枚举属性的键值对数组。
- 示例:
let entries = Object.entries(obj);
返回对象 obj 的所有键值对的数组。
Object.assign(target, ...sources)
- 作用: 将一个或多个源对象的所有可枚举属性复制到目标对象。
- 示例:
let merged = Object.assign({}, obj1, obj2);
将 obj1 和 obj2 的属性合并到一个新对象中。
Object.freeze(obj)
- 作用: 冻结对象,使其不可修改。
- 示例:
Object.freeze(obj);
冻结对象 obj,使其属性不可修改。
字符串方法
split(separator)
- 作用: 将字符串分割成数组。
- 示例:
let parts = str.split(' ');
将字符串 str 按空格分割成数组。
join(separator)
- 作用: 将数组中的元素连接成一个字符串。
- 示例:
let joined = arr.join('-');
将数组 arr 中的元素用 - 连接成字符串。
substring(start, end)
- 作用: 返回字符串的一部分,不会修改原字符串。
- 示例:
let subStr = str.substring(1, 3);
返回从索引 1 到 3(不包括 3)的子字符串。
Map
Map 是一种键值对的集合,其中键和值可以是任何类型的数据。Map 提供了一些方法来操作这些键值对。
- 方法:
set(key, value)
: 设置键值对。- 示例:
map.set('name', 'Alice');
设置键 'name' 对应的值为 'Alice'。
- 示例:
get(key)
: 获取键对应的值。- 示例:
let name = map.get('name');
获取键 'name' 对应的值。
- 示例:
has(key)
: 检查是否存在某个键。- 示例:
let hasName = map.has('name');
检查 'name' 是否存在于 Map 中。
- 示例:
delete(key)
: 删除键值对。- 示例:
map.delete('name');
删除键 'name' 及其对应的值。
- 示例:
clear()
: 清空 Map 中的所有键值对。- 示例:
map.clear();
清空 Map 中的所有键值对。
- 示例:
size
: 返回 Map 中键值对的数量。- 示例:
let size = map.size;
获取 Map 中键值对的数量。
- 示例:
- 示例:
1 |
|
Set
Set 是一种集合,其中每个值都是唯一的。Set 提供了一些方法来操作这些值。
- 方法:
add(value)
: 添加一个值。- 示例:
set.add(1);
向 Set 中添加值 1。
- 示例:
has(value)
: 检查是否存在某个值。- 示例:
let hasOne = set.has(1);
检查 1 是否存在于 Set 中。
- 示例:
delete(value)
: 删除某个值。- 示例:
set.delete(1);
删除值 1。
- 示例:
clear()
: 清空 Set 中的所有值。- 示例:
set.clear();
清空 Set 中的所有值。
- 示例:
size
: 返回 Set 中值的数量。- 示例:
let size = set.size;
获取 Set 中值的数量。
- 示例:
- 示例:
1 |
|
TS数据类型方法积累
http://118.31.9.209/2025/03/13/TS数据类型方法积累/