JavaScript是一种常用的编程语言,可以用于网页开发、游戏开发等领域。在JavaScript中,数组是一种很重要的数据类型,它允许开发者存储一个序列的值并随意修改这些值。通常,我们使用各种数组方法(如push、pop、splice等)来处理数组。然而,JavaScript还提供了一些非数组方法,这些方法虽然可以与数组配合使用,但不属于数组方法。以下是一些不属于数组方法的JavaScript函数。
一、Array.from()
console.log(Array.from("hello"))// [ "h", "e", "l", "l", "o" ]console.log(Array.from([1, 2, 3], x => x * 2))// [2, 4, 6]Array.from() 方法从一个类似数组或可迭代对象中创建一个新的数组实例。它接受两个可选参数:一个类似数组的对象和一个 map 函数,用于转换数组的每个元素。该方法将一个字符串变量转换成一个字符数组,并将一个含有数字的数组进行了元素乘2的运算。
二、Array.isArray()
console.log(Array.isArray([]))// trueconsole.log(Array.isArray("hello"))// falseArray.isArray() 方法用于确定传递的值是否为 Array。它返回一个布尔值。此方法旨在解决typeof返回 "object" 时的不足之处。当判断一个对象是不是数组时,可以使用该方法。
三、Array.of()
console.log(Array.of(1, 2, 3))// [1, 2, 3]console.log(Array.of("hello"))// ["hello"]Array.of() 方法创建一个包含任意数量参数的新数组实例。该方法使用 toLength 方法将类数组对象转换成数组的方法。它可以将一个带有多个参数的列表转换为数组,甚至可以将单个参数转换为数组。
四、Array.prototype.copyWithin()
let arr = ['a', 'b', 'c', 'd', 'e'];console.log(arr.copyWithin(0, 3, 4))// ["d", "b", "c", "d", "e"]
copyWithin() 方法可从数组的指定位置拷贝元素到数组的另一个指定位置中。它采用三个参数:target(必需):复制到此数组的目标下标位置, start(可选):元素复制的起始位置下标, end(可选):停止复制的下标的结束位置。该方法将数组的第4个位置的元素复制到数组的第1个位置,并返回了新的数组。
五、Array.prototype.entries()
let arr = ['a', 'b', 'c'];let iterator = arr.entries();console.log(iterator.next().value)// [0, "a"]console.log(iterator.next().value)// [1, "b"]console.log(iterator.next().value)// [2, "c"]
Array.prototype.entries() 返回一个包含数组所有键值对的迭代器。它将一个数组转为迭代器对象,该迭代器可以通过 next() 方法进行遍历。该方法返回了用于表示数组元素的键值对。
结论:以上介绍的所有函数都不是数组方法,但是它们可以与数组一起使用。Array.from()、Array.isArray()、Array.of()、Array.prototype.copyWithin() 和 Array.prototype.entries() 都可以完成一些不同的操作。了解它们的用法可以帮助我们更好地处理数组,并且在实际开发中有很大的帮助意义。
上一篇:css投影代码怎么写
下一篇:JavaScript中什么值是假值









