Javascript类型错误,函数不是函数

Javascript类型错误,函数不是函数,javascript,html,typeerror,Javascript,Html,Typeerror,好的,我正在学习Javascript,对于我的第一个小项目,我想做一个任务组织者。当我第一次单击按钮添加任务时,它会将其添加到页面中,然后当我单击按钮添加另一个任务时,它会抛出一个类型错误。我是否需要某种类型的循环来捕获错误,还是在单击按钮时调用函数时出现问题 错误 HTML 当您在注释中写入时,您命名变量的方式与命名函数的方式相同。实际上,您不需要在函数外部初始化变量。对于注释中的第二个问题,您的变量成为新任务,因为您实际上替换了变量的全部内容。您需要改用数组 var task = []; f

好的,我正在学习Javascript,对于我的第一个小项目,我想做一个任务组织者。当我第一次单击按钮添加任务时,它会将其添加到页面中,然后当我单击按钮添加另一个任务时,它会抛出一个类型错误。我是否需要某种类型的循环来捕获错误,还是在单击按钮时调用函数时出现问题

错误

HTML


当您在注释中写入时,您命名变量的方式与命名函数的方式相同。实际上,您不需要在函数外部初始化变量。对于注释中的第二个问题,您的变量成为新任务,因为您实际上替换了变量的全部内容。您需要改用数组

var task = [];
function getTask(){
    var getTask = document.getElementById("taskInput").value;
    task.push(getTask);
    console.log(task);
    document.getElementById('showTask').innerHTML = task;
}

请参阅第一行
var task=[]
和第四行
task.push(getTask)

getTask被声明为函数而不是全局变量

//getTask是一个未声明为全局变量的函数
var任务;
函数getTask(){
task=document.getElementById(“taskInput”).value;;
console.log(任务);
document.getElementById('showTask')。innerHTML=task;
}

任务跟踪器

添加任务
HTML中包含的脚本在哪里?不能有同名的全局函数和全局变量。javascript链接在头部底部,看起来像这样。我没有意识到我将变量命名为与函数名相同的名称哈哈,但我改变了这一点,现在每当我按下按钮时,它都会工作,但不是向页面添加新任务,而是输入的新任务取代了旧任务。谢谢,它工作了。假设.push()方法类似于PythonAppend方法是否正确?是的,这是正确的。查看此文件以获取有关阵列的信息
<body>
    <div class='container'>
        <p>Task Tracker</p>
        <input type="text" name="Title" id="taskInput">
        <button onclick="getTask()"> Add Task </button>
        <div class="todo" id="showTask">    
        </div>
    </div>
</body>
var getTask;
var task;
function getTask(){
    getTask = document.getElementById("taskInput").value;
    task = getTask;
    console.log(task);
    document.getElementById('showTask').innerHTML = task;
}

var task = [];
function getTask(){
    var getTask = document.getElementById("taskInput").value;
    task.push(getTask);
    console.log(task);
    document.getElementById('showTask').innerHTML = task;
}