js,javascript数组方法keys(),lastIndexOf(),map(),pop(),push()(2024-04-30)

1、keys() 方法

返回带有数组键的 Array Iterator 对象。

注释:keys() 方法不改变原数组。

javascript 复制代码
// 返回带有数组键的 Array Iterator 对象
const fruits = ["Banana", "Orange", "Apple", "Mango"];
const keys = fruits.keys();
let text = null;
for (let x of keys) {
  text += x;
}
console.log(keys)  //有数组键的 Array Iterator 对象
console.log(text)  // 0123

2、lastIndexOf()方法

lastIndexOf() 方法在数组中搜索指定项目,并返回其位置。

搜索将从指定位置开始,如果未指定开始位置,则从末尾开始,并在数组的开头结束搜索。

如果未找到该项目,则 lastIndexOf() 方法返回 -1。

如果要搜索的项目不止一次出现,lastIndexOf() 方法将返回最后一次出现的位置。

提示:如果要从头到尾搜索,使用 indexOf() 方法。

javascript 复制代码
// 返回指定值的最后一个位置
// 在数组中搜索 "33" 项:
var fruits = ["11", "22", "33", "44"];
var a = fruits.lastIndexOf("33");
// 2

// 在数组中搜索项目 "33",从位置 4 开始搜索:
var fruits = ["111", "222", "333", "444", "555", "333", "333"];
var a = fruits.lastIndexOf("333", 4);
// 3 

3、map() 方法

map() 方法使用为每个数组元素调用函数的结果创建新数组。

按顺序为数组中的每个元素调用一次提供的函数。

注释:map() 对没有值的数组元素不执行函数,map() 不会改变原始数组。

javascript 复制代码
// array.map(function(currentValue, index, arr), thisValue)

const numbers = [1, 2, 3, 4];
const newArr = numbers.map((item) => {
return item*10
});

console.log(newArr) // [10,20,30,40]

4、pop() 方法

pop() 方法移除数组的最后一个元素,并返回该元素。

注释:会改变数组的长度。

提示:如需删除数组的第一个元素,请使用 shift() 方法。

javascript 复制代码
const fruits = ["11", "22", "33", "44"];
fruits.pop();   // Returns "44"

5、push() 方法

push() 方法向数组末尾添加新项目,并返回新长度。

提示:新的项目将被添加到数组的末尾。

注释:push() 方法会改变数组的长度。

提示:如需在数组的开头添加项目,请使用 unshift() 方法。

javascript 复制代码
let f = ["11", "22", "33"];
const a = f.push("44");

console.log(f) // ["11","22","33","44"]
console.log(a) // 5
相关推荐
徐小夕31 分钟前
Loop Engineering 深度解析与实战指南(全网最全)
前端·算法·github
凡人叶枫35 分钟前
Effective C++ 条款22:将成员变量声明为 private
linux·开发语言·c++
Qt程序员41 分钟前
掌握 Linux 内核调度:从原理到实现(进程篇)
java·开发语言
运筹vivo@1 小时前
Python ContextVar 底层机制与内存模型拆解
前端·数据库·python
code bean1 小时前
【LangChain】检索器完全指南:从向量检索到生产级 RAG 架构
java·开发语言·微服务
LabVIEW开发1 小时前
LabVIEW + MATLAB 混合编程:爆炸场测试数据精准采集方案
开发语言·matlab·labview
嵌入式协会20240721 小时前
(已解决)MinIO python 获取预签名出现forbidden、errornetwork等错误
java·开发语言·python
宸丶一1 小时前
Day 14:任务追踪 - 让 Agent 拥有项目管理能力
开发语言·python
小短腿的代码世界1 小时前
Qt行情协议解析与二进制编解码优化:从FIX到自定义协议的全链路架构
开发语言·qt·架构
skylar02 小时前
小白1分钟安装flash-attn
开发语言·python