Javascript:返回数组最后一个元素的函数

Javascript:返回数组最后一个元素的函数,javascript,Javascript,我正在学习Colt Steele的课程,题目是:“2020年网络开发者训练营”。然而,我已经陷入了某种编码练习。练习目标如下:请编写一个名为lastElement的函数,该函数接受单个数组参数。函数应返回数组的最后一个元素(不删除该元素)。如果数组为空,则函数应返回null。 我试图想出一个解决办法,但似乎想不出来。我目前的最佳猜测是: function lastElement (num) { if (num !== undefined){ return num[num.length -

我正在学习Colt Steele的课程,题目是:“2020年网络开发者训练营”。然而,我已经陷入了某种编码练习。练习目标如下:请编写一个名为lastElement的函数,该函数接受单个数组参数。函数应返回数组的最后一个元素(不删除该元素)。如果数组为空,则函数应返回null。

我试图想出一个解决办法,但似乎想不出来。我目前的最佳猜测是:

function lastElement (num) {
if (num !== undefined){
    return num[num.length -1];
} return null;
}

我很想知道为什么我写的函数不起作用,以及一些关于我应该如何重新思考函数的建议,以便它起作用


向安德烈亚斯致以最诚挚的问候

请改变这种状况

if (num && num.length>0) 

改变到这个状态

if (num && num.length>0) 

将您的条件更改为:

如果(num&&num.length>0)

此外,如果他们决定输入一个不是数组的参数


如果(num&&Array.isArray(num)&&num.length>0)

将条件更改为:

如果(num&&num.length>0)

此外,如果他们决定输入一个不是数组的参数


如果(num&&Array.isArray(num)&&num.length>0)

问题在于和值的差异: 空数组是真实的,但未定义是虚假的,所以[]==undefined为true,但:

num[num.length -1]; 
指:

num[-1]; 

未定义。

问题在于和值的差异: 空数组是真实的,但未定义是虚假的,所以[]==undefined为true,但:

num[num.length -1]; 
指:

num[-1]; 
未定义。

if(num)检查所有“falsy”值。检查“num”是否存在。如果(num)检查所有“falsy”值。检查“num”是否存在。