我需要创建一个函数,将一个新值输入一个空数组,然后该值保留在数组中,即使该值发生变化。让我解释一下我到目前为止的一个例子:
var arr = [];
arr.unshift("f");
if (arr.length > 6) {
arr.pop();
}
console.log(arr);
arr.unshift("e");
if (arr.length > 6) {
arr.pop();
}
console.log(arr);
arr.unshift("d");
if (arr.length > 6) {
arr.pop();
}
console.log(arr);
arr.unshift("c");
if (arr.length > 6) {
arr.pop();
}
console.log(arr);
arr.unshift("b");
if (arr.length > 6) {
arr.pop();
}
console.log(arr);
arr.unshift("a");
if (arr.length > 6) {
arr.pop();
}
console.log(arr);
arr.unshift("z");
if (arr.length > 6) {
arr.pop();
}
console.log(arr);
这里在空数组中,新值在第一个位置输入并保留在数组arr中。这就是我在控制台中得到的结果:
(6) ["f"]
(6) ["e", "f"]
(6) ["d", "e", "f"]
(6) ["c", "d", "e", "f"]
(6) ["b", "c", "d", "e", "f"]
(6) ["a", "b", "c", "d", "e", "f"]
(6) ["z", "a", "b", "c", "d", "e"]
这正是我想要实现的目标。我需要一个定期更新的var,而不是这些值。
var newValue = value_to_be_updated;
function myFunction(newValue) {
var arr = [];
arr.unshift(newValue);
return arr
}
if (arr.length > 6) {
arr.pop();
}
我的目标是减少上面的代码并使其成为一种功能,但无法找到任何有用的东西。也有任何方式输入的值保留在数组中,即使从var?
中删除任何帮助都将非常感谢!!!!!
提前致谢
答案 0 :(得分:0)
如果在更改无效的源代码后期望arr
的值保持不变,则应使用例如提示动态获取新值。
还有@ gurvinder372说你的功能看起来应该是这样的
var arr = [];
function myFunction(newValue) {
arr.unshift(newValue);
if (arr.length > 6) {
arr.pop();
}
return arr
}
然后使用它你可以做这样的事情
for (var i = 0; i<8; i++){
var value = prompt('enter char');
myFunction(value);
}