如果输入值为空或null,如何防止函数运行?香草JavaScript
如果保存为变量“x”的用户输入不为空或null,我希望此列表仅添加列表项并更新计数。但是,无论输入值是什么,addNewItem()和updateCount()函数似乎都在运行如果输入值为空或null,如何防止函数运行?香草JavaScript,javascript,Javascript,如果保存为变量“x”的用户输入不为空或null,我希望此列表仅添加列表项并更新计数。但是,无论输入值是什么,addNewItem()和updateCount()函数似乎都在运行 const title = document.getElementById('title'); const list = document.getElementById('list'); const input = document.getElementById('todoInput'); const add = d
const title = document.getElementById('title');
const list = document.getElementById('list');
const input = document.getElementById('todoInput');
const add = document.getElementById('add')
function todoList() {
var x = document.querySelector('#todoInput').value;
function checkInput(){
if (x == null || x == "") {
var p = document.createElement("P")
var emptyError = document.createTextNode("Please enter something for the list");
document.querySelector('#message').appendChild(emptyError);
}
}
checkInput();
function removeMsg() {
const elems = document.querySelector('#message');
setTimeout(function() {
document.querySelector("#message").innerHTML = "";
}, 4000);
}
removeMsg();
if (x !== null || x !== "") {
function addNewItem() {
console.log('something');
const item = input.value;
const text = document.createTextNode(item);
const newItem = document.createElement('li');
const check = document.createElement('span');
check.className = 'circle';
newItem.appendChild(check);
newItem.appendChild(text);
list.appendChild(newItem);
input.value = '';
}
addNewItem();
function updateCount() {
const count = list.childElementCount;
title.innerHTML = `You have ${count} to-dos.`;
}
updateCount();
}
}
todoList();
您可以使用
检查(x!=null&&x!=“”)
以检查空值或空值。但是,您也可以这样做:
if(x)
这将确保x的值不仅非空且不为null,还将检查所有虚假值,如
NaN
,未定义的
等,并且仅传递真实值。x!==空| | x!==“
将始终计算为true
the&&修复它!非常感谢,这让我发疯了!我建议用简短的if(x)检查。此外,它还将防止其他虚假的价值观。但是请记住,0
也是一个错误的值。