获取数组的最后一个值并在X轴下显示它

时间:2011-05-02 11:39:53

标签: javascript prototypejs flotr

var NewdateData[] = [1,2,3,4,5,6,7,8,9,1,2,1,23,45,56]

根据用户界面的选择,从数据库动态填充此NewdateData

我正在使用此NewdateData在X轴图表下显示。

我面临的问题是,直到最后才取值,我希望在X轴标签下有最后一个值。

xaxis: {tickFormatter: function(n)
{
    var k = Math.round(n);
    return NewdateData[k]; 
}

我正在使用flotr

6 个答案:

答案 0 :(得分:13)

您可以使用以下命令获取数组的最后一个值:

NewdateData[NewdateData.length-1];

答案 1 :(得分:0)

参加聚会很晚,但为了后代:在ES2015 / ES6中,您可以使用Array.prototype.slice。不会使数组发生变化,负数会将数组末尾的元素作为新数组提供给您。

因此要获取最后一个元素:

let arr = [1, 2, 3, 4, 5];
let last = arr.slice(-1); // last = 5      

答案 2 :(得分:0)

我没有足够的观点来评论Radman的帖子。但是他的解决方案是错误的。

  

let arr = [1,2,3,4,5];让last = arr.slice(-1); //最后= 5

返回[5],而不是5。

  

slice()方法返回数组一部分的浅表副本   插入从开始到结束(不包括结束)的新数组对象。   原始数组将不会被修改。

正确答案:

let arr = [1, 2, 3, 4, 5];
let last = arr.slice(-1)[0];

参考:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/slice

答案 3 :(得分:0)

现在我们正在使用ES6功能

var arr = [1,2,3,4,5,6]

const [a,... b] = arr.reverse();

console.log(a)

答案 4 :(得分:0)

超级容易! ?,只需使用地图功能即可。

这是我要从中选择最后一项的数组:-

const animals = ['Dodo', 'Tiger', 'Penguin', 'Dodo'];

使用map函数遍历数组以使用index参数并将其与动物数组长度进行比较:-

animals.map((animal, index) => animals.length -1 === index ? console.log("last item selected :)" + animal) : console.log("i'm not the last item"))

答案 5 :(得分:0)

一个简单方便的方法是使用Array.prototype.at()

function returnLast(arr) {
  return arr.at(-1);
}

const cart = ['apple', 'banana', 'pear'];
const lastItem = returnLast(cart);

console.log(lastItem)  //pear

或者只是

const lastItem = cart.at(-1)