Javascript 将输入记录到数组中,仅打印新输入

Javascript 将输入记录到数组中,仅打印新输入,javascript,Javascript,好的,我有几个函数。我不认为它们中的大多数是相关的。我想做的是在单击按钮时创建一个html列表,并将值存储在数组中。但是,我希望能够在不再次输出整个数组的情况下更新此列表。我把它设置为接受输入,我可以让它循环并打印数组,但它会打印整个数组,我只需要一个。这似乎是一件很平常的事情,但我的Google fu没有返回任何信息 所以我有一个列表变量,它连接到一个输入,将它记录到一个数组中,还有一个函数清除它并打印出值 代码段: var listItemInput= document.getElement

好的,我有几个函数。我不认为它们中的大多数是相关的。我想做的是在单击按钮时创建一个html列表,并将值存储在数组中。但是,我希望能够在不再次输出整个数组的情况下更新此列表。我把它设置为接受输入,我可以让它循环并打印数组,但它会打印整个数组,我只需要一个。这似乎是一件很平常的事情,但我的Google fu没有返回任何信息

所以我有一个列表变量,它连接到一个输入,将它记录到一个数组中,还有一个函数清除它并打印出值

代码段:

var listItemInput= document.getElementByID("listItem");
var listItem= [];

function insertListItem(){
listItem.push(listItemInput.value);
clearAndShow();
}

function clearAndShow(){
listItemInput.value= "";
}
function printList{
   for (var i = 0; i < listItem.length; i++){
document.getElementById("list").innerHTML += '<li>' + listItem[i] + '</li>';
}
var listItemInput=document.getElementByID(“listItem”);
var listItem=[];
函数insertListItem(){
listItem.push(listItemInput.value);
clearAndShow();
}
函数clearAndShow(){
listItemInput.value=“”;
}
函数打印列表{
对于(变量i=0;i';
}
当按下按钮调用printList函数时,它会打印整个数组,但是我想要一个只打印最新项的按钮。我该怎么做


为了澄清,我需要将列表打印成html并将值存储在一个数组中,稍后将在if-else参数中引用这些值,以将它们与新变量合并并打印

编辑:
我插入了var=lastIndex并对其进行了更改,还为我的列表添加了两个变量。这似乎可以使它正常工作。谢谢。

您可以跟踪最后打印的索引

var listItemInput= document.getElementByID("listItem");
var listItem = [];
var lastIndex = 0; //Keep track of the last index shown.

function insertListItem() {
    listItem.push(listItemInput.value);
    clearAndShow();
}

function clearAndShow() {
    listItemInput.value = "";
}

function printList() {
    for (; lastIndex < listItem.length; lastIndex++) {
       document.getElementById("list").innerHTML += '<li>' + listItem[lastIndex] + '</li>';
    }
}
var listItemInput=document.getElementByID(“listItem”);
var listItem=[];
var lastIndex=0;//跟踪显示的最后一个索引。
函数insertListItem(){
listItem.push(listItemInput.value);
clearAndShow();
}
函数clearAndShow(){
listItemInput.value=“”;
}
函数printList(){
对于(;lastIndex';
}
}

这种方法假设您不会从
listItem
数组中删除项目,而您没有表示的项目是可以完成的。

您可以跟踪最后打印的索引

var listItemInput= document.getElementByID("listItem");
var listItem = [];
var lastIndex = 0; //Keep track of the last index shown.

function insertListItem() {
    listItem.push(listItemInput.value);
    clearAndShow();
}

function clearAndShow() {
    listItemInput.value = "";
}

function printList() {
    for (; lastIndex < listItem.length; lastIndex++) {
       document.getElementById("list").innerHTML += '<li>' + listItem[lastIndex] + '</li>';
    }
}
var listItemInput=document.getElementByID(“listItem”);
var listItem=[];
var lastIndex=0;//跟踪显示的最后一个索引。
函数insertListItem(){
listItem.push(listItemInput.value);
clearAndShow();
}
函数clearAndShow(){
listItemInput.value=“”;
}
函数printList(){
对于(;lastIndex';
}
}

这种方法假定您不会从
listItem
数组中删除项,而您没有表示的项是可以完成的。

如果您只需要一个元素,为什么需要迭代

function printList() {
    document.getElementById('list').innerHTML = '<li>' + listItem[listItem.length-1] + '</li>';
}
函数printList(){
document.getElementById('list').innerHTML='
  • '+listItem[listItem.length-1]+'
  • '; }
    如果只需要一个元素,为什么需要迭代

    function printList() {
        document.getElementById('list').innerHTML = '<li>' + listItem[listItem.length-1] + '</li>';
    }
    
    函数printList(){
    document.getElementById('list').innerHTML='
  • '+listItem[listItem.length-1]+'
  • '; }
    他希望打印自上次执行以来添加的所有项目
    printList()
    我相信。为了澄清,我需要将列表打印成html格式,并将值存储在数组中,稍后将在if-else参数中引用这些值,以将它们与新变量组合并打印。他希望打印自上次执行以来添加的所有项我相信。为了澄清,我需要将列表打印为html并将值存储在数组中,稍后将在if-else参数中引用这些值,以将它们与新变量组合并打印。我可能需要删除变量的选项。为了澄清,我需要将列表打印为html并将值存储在数组中稍后将在if-else参数中引用值,以将其与新变量合并并打印。最后,还会有三个不同的列表插入到读取数组的适当大小的if-else参数中。我可能需要删除变量的选项。为了澄清,我需要将列表打印为html并将值存储在在数组中,这些值稍后将在if-else参数中引用,以将它们与新变量组合并打印出来。最后,还会有三个不同的列表插入到读取数组的大小合适的if-else参数中。