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
相关推荐
三道渊40 分钟前
C语言:文件I/O
c语言·开发语言·数据结构·c++
hnlgzb43 分钟前
安卓app kotlin语法,Hilt是什么东西?
android·开发语言·kotlin
没用的阿_吉1 小时前
windows10 Qt5.15.14 msvc2019 编译部署
开发语言·qt
我命由我123451 小时前
React - 类组件 setState 的 2 种写法、LazyLoad、useState
前端·javascript·react.js·html·ecmascript·html5·js
聊聊MES那点事1 小时前
JavaScript图表控件AG Charts使用教程:使用AG Charts React实时更新柱状图
开发语言·javascript·react.js·图表控件
ywf12151 小时前
Go基础之环境搭建
开发语言·后端·golang
自由生长20242 小时前
IndexedDB的观察
前端
是有头发的程序猿2 小时前
用Open Claw接口做1688选品、价格监控、货源对比
开发语言·c++·人工智能
IT_陈寒2 小时前
Vite热更新坑了我三天,原来配置要这么写
前端·人工智能·后端
斯班奇的好朋友阿法法2 小时前
离线ollama导入Qwen3.5-9B.Q8_0.gguf模型
开发语言·前端·javascript