【LeetCode】2619. 数组原型对象的最后一个元素

数组原型对象的最后一个元素

题目


请你编写一段代码实现一个数组方法,使任何数组都可以调用 array.last() 方法,这个方法将返回数组最后一个元素。如果数组中没有元素,则返回 -1

你可以假设数组是 JSON.parse 的输出结果。


示例 1 :

输入:nums = [null, {}, 3]

输出:3

解释:调用 nums.last() 后返回最后一个元素: 3


示例 2 :

输入:nums = []

输出:-1

解释:因为此数组没有元素,所以应该返回 -1


提示:

arr 是一个有效的 JSON 数组

0 <= arr.length <= 1000


题解

在定义 Array 类共用方法时,函数内的 this 代表本数组

ts 复制代码
declare global {
    interface Array<T> {
        last(): T | -1;
    }
}

Array.prototype.last = function<T>(): T | -1 {
    let list: T[] = [...this];
    if (!list.length) return -1;
    return list[list.length -1]
};

/**
 * const arr = [1, 2, 3];
 * arr.last(); // 3
 */

export {};
相关推荐
咩咩不吃草24 分钟前
【逻辑回归】:从模型训练到评价
算法·机器学习·逻辑回归
ersaijun25 分钟前
机器人运动控制关键算法体系:从理论框架到前沿实践
算法·机器人
smj2302_7968265233 分钟前
解决leetcode第3826题.最小分割分数问题
数据结构·python·算法·leetcode
多多*34 分钟前
2026年最新 测试开发工程师相关 Linux相关知识点
java·开发语言·javascript·算法·spring·java-ee·maven
June bug40 分钟前
【PMP】敏捷宣言与原则
职场和发展·学习方法
VT.馒头1 小时前
【力扣】2705. 精简对象
javascript·数据结构·算法·leetcode·职场和发展·typescript
元亓亓亓1 小时前
LeetCode热题100--136. 只出现一次的数字--简单
算法·leetcode·职场和发展
程序员小远1 小时前
UI自动化测试用例管理平台搭建
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
2301_763472581 小时前
实时系统下的C++编程
开发语言·c++·算法
张祥6422889041 小时前
二次型:从线性代数到测量平差的桥梁
线性代数·算法·机器学习