我一直在想如何显示最新的数组(因为数组列表会不时更新)。我认为它有一个默认功能,但我找不到它。任何人都知道吗?Javascript:获取最新阵列
var bgImg = new Array();
bgImg[0] = "background.jpg";
bgImg[1] = "background2.jpg";
bgImg[2] = "background3.jpg";
bgImg[3] = "background4.jpg";
我一直在想如何显示最新的数组(因为数组列表会不时更新)。我认为它有一个默认功能,但我找不到它。任何人都知道吗?Javascript:获取最新阵列
var bgImg = new Array();
bgImg[0] = "background.jpg";
bgImg[1] = "background2.jpg";
bgImg[2] = "background3.jpg";
bgImg[3] = "background4.jpg";
如果你想最后一个元素的数组,
>>> a = ['background1','background2'];
["background1", "background2"]
>>> b = a[a.length-1]
"background2"
你不应该需要手动分配索引。只要做bgImg.push('background2.jpg'),它会改变你的数组。在你的情况下,语法会...
var last = bgImg[bgImg.length-1]
如果你想最新,那么你需要做一个变量,并如果没有任何更新,当你把最新的一个,将其设置成为最后一个。
您可以创建一个小对象来处理这个问题。
function creatImageState() {
var images = [];
return {
get latest() {
return images[images.length - 1];
},
set latest (value) {
images.push(value);
}
};
}
var s = creatImageState();
s.latest = "a.png";
s.latest = "b.png";
alert(s.latest);
IE不支持getter和setter,所以你可能需要使用它。
function creatImageState() {
var images = [];
return {
getLatest : function() {
return images[images.length - 1]
},
setLatest : function(value) {
images.push(value);
}
};
}
var s = creatImageState();
s.setLatest("a.png");
s.setLatest("b.png");
alert(s.getLatest());
请澄清你在这里问的问题。 – 2010-11-13 17:44:02
对不起,这只是英语是我的第二语言。 – Aistis 2010-11-13 17:49:13