9
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

4

6 回答 6

16

您可以通过以下方式获取数组的最后一个值:

NewdateData[NewdateData.length-1];
于 2011-05-02T12:07:45.190 回答
1

我没有足够的分数来评论拉德曼的帖子。但他的解决方案是错误的。

让 arr = [1, 2, 3, 4, 5]; 让最后 = 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

于 2019-07-16T11:59:29.200 回答
1

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

所以要获得最后一个元素:

let arr = [1, 2, 3, 4, 5];
let last = arr.slice(-1); // last = 5      
于 2018-11-28T11:38:57.573 回答
1

超级简单!,只需使用地图功能即可。

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

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

使用 map 函数循环数组以使用索引参数并将其与动物数组长度进行比较:-

animals.map((animal, index) => animals.length -1 === index ? console.log("last item selected :)" + animal) : console.log("i'm not the last item"))
于 2020-10-19T09:45:19.697 回答
0

现在我们生活在 ES6 特性中

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

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

控制台日志(一)

于 2020-08-26T12:05:18.207 回答
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)
于 2021-07-24T10:45:50.363 回答