【前端常用数据处理方法 - CSDN App】http://t.csdnimg.cn/n61ef
一.字符串处理
在JavaScript中,你可以使用多种方法来切割字符串。最常用的方法是使用 substring()
, slice()
, substr()
, 和 split()
函数。下面是一些示例:
substring() 方法
substring()
方法返回字符串中两个指定的下标之间的字符。包括开始下标的字符,但不包括结束下标的字符。
let str = "Hello, World!";
let result = str.substring(0, 5); // 返回 "Hello"
slice() 方法
slice()
方法提取某个字符串的一部分,并返回一个新的字符串,且不会改动原字符串。
let str = "Hello, World!";
let result = str.slice(0, 5); // 返回 "Hello"
slice()和
substring() 的主要区别在于,
slice()` 可以处理负数参数,表示从字符串尾部开始计数。
let str = "Hello, World!";
let result = str.slice(-1); // 返回 "!"
substr() 方法
substr()
方法返回一个字符串从指定位置开始的指定长度的字符。
需要注意的是,substr()
方法已经被认为是一个遗留的函数,可能在未来的JavaScript版本中不再被支持。因此,建议使用 slice()
或 substring()
来代替。
split() 方法
split()
方法用于把字符串分割为字符串数组。
let str = "apple,banana,cherry";
let result = str.split(","); // 返回 ["apple", "banana", "cherry"]
在这个例子中,字符串被逗号分割成了一个数组。你可以使用任何字符或字符串作为分隔符。如果不提供分隔,那么整个字符串将被分割成单个字符的数组。
二.js的列表处理(List)
JavaScript 对列表(通常指数组)提供了丰富的处理方法。以下是一些常见的数组处理方法:
1. 遍历数组
- for 循环:传统的循环方式。
- for...of 循环:ES6 引入的,用于遍历可迭代对象(包括数组)。
- forEach():对数组的每个元素执行一次提供的函数。
- map():创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果。
- filter():创建一个新数组, 其包含通过所提供函数实现的测试的所有元素。
- reduce():对累加器和数组中的每个元素(从左到右)应用一个函数,将其减少为单个输出值。
- some():测试数组中是否至少有一个元素通过由提供的函数实现的测试。
- every():测试数组的所有元素是否都通过了由提供的函数实现的测试。
- find():返回数组中满足提供的测试函数的第一个元素的值。否则返回 undefined。
- findIndex():返回数组中满足提供的测试函数的第一个元素的索引。否则返回 -1。
2. 修改数组
- push():向数组的末尾添加一个或更多元素,并返回新的长度。
- pop():删除并返回数组的最后一个元素。
- shift():删除并返回数组的第一个元素。
- unshift():向数组的开头添加一个或更多元素,并返回新的长度。
- splice():通过删除或替换现有元素或者添加新元素来修改数组,并以数组形式返回被修改的内容。
- sort():对数组的元素进行排序,并返回数组。排序顺序可以是字母或数字,并按升序或降序。默认排序顺序根据字符串Unicode码点。
- reverse():颠倒数组中元素的顺序,并返回该数组。数组的第一个元素会变成最后一个,数组的最后一个元素变成第一个。
- fill():用一个固定值填充一个数组中从起始索引到终止索引内的全部元素。不包括终止索引。
- copyWithin():在数组内部,将一段连续元素复制到另一个位置,并返回这个数组。不会改变原数组的长度。
3. 查找数组元素
- indexOf():返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1。
- lastIndexOf():返回指定元素在数组中的最后一个索引,如果不存在则返回 -1。
- includes():判断一个数组是否包含一个指定的值,根据情况,如果需要,请使用 NaN 或 -0。
- find() 和 findIndex()(如上所述,它们也用于查找)。
4. 数组转换
- toString():把数组转换为字符串,并返回结果。
- join():把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。
- slice():返回一个新的数组对象,这一对象是一个由开始到结束(不包括结束)选择的、由原数组的浅拷贝构成。原始数组不会被改变。
- concat():用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。
- flatMap():首先使用映射函数映射每个元素,然后将结果压缩成一个新数组。它与 map 和 深度 concat 的组合非常相似。
5. 数组扩展
- Array.from():从类似数组或可迭代的对象创建一个新的数组实例。
- Array.of():创建一个具有可变数量参数的新数组实例,而不考虑参数的数量或类型。
- Array.isArray():确定一个对象是否是一个数组。
这些只是JavaScript中数组处理方法的一部分。随着新的ECMAScript规范的发布,JavaScript继续引入新的数组方法和功能。因此,建议查阅最新的ECMAScript规范或相关文档,以获取最全面和最新的信息。