Javascript 数组和for循环的困难

Javascript 数组和for循环的困难,javascript,Javascript,我在for循环中遇到困难。学生名字和姓氏的第一个实例起作用,但其余的名字都收到了警报。感谢您的帮助。多谢各位 html: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Js Test</title> </head> <body> <input type="name" id="first_name" placehol

我在
for
循环中遇到困难。学生名字和姓氏的第一个实例起作用,但其余的名字都收到了
警报。感谢您的帮助。多谢各位

html:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Js Test</title>
</head>
<body>
    <input type="name" id="first_name" placeholder="First Name"/>
    <input type="name" id="last_name" placeholder="Last Name"/>
    <input type="name" id="result" placeholder="Full Name"/>
    <button onclick='validator()' id="submit">Submit</button>
</body>
</html>
var students = [
{first:'Max', last:'Smith'},
{first:'Ardon', last:'Bailey'},
{first:'Todd', last:'Gumke'},
{first:'Bob', last:'Plug'},
{first:'Trub', last:'Lee'}];

function full_name (first_name, last_name) {
var foo = false;
for (var i = 0; i < students.length; i++) {
    if (students[i].first === first_name && students[i].last === last_name) {
        foo = true;
    }
}
if (foo === true) {
    alert('yay');
} else {
    alert('sad');
 }
}


function validator() {
var result = document.getElementById('result');
result.value = full_name(document.getElementById('first_name').value,  document.getElementById('last_name').value);
}

Js测试
提交
js:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Js Test</title>
</head>
<body>
    <input type="name" id="first_name" placeholder="First Name"/>
    <input type="name" id="last_name" placeholder="Last Name"/>
    <input type="name" id="result" placeholder="Full Name"/>
    <button onclick='validator()' id="submit">Submit</button>
</body>
</html>
var students = [
{first:'Max', last:'Smith'},
{first:'Ardon', last:'Bailey'},
{first:'Todd', last:'Gumke'},
{first:'Bob', last:'Plug'},
{first:'Trub', last:'Lee'}];

function full_name (first_name, last_name) {
var foo = false;
for (var i = 0; i < students.length; i++) {
    if (students[i].first === first_name && students[i].last === last_name) {
        foo = true;
    }
}
if (foo === true) {
    alert('yay');
} else {
    alert('sad');
 }
}


function validator() {
var result = document.getElementById('result');
result.value = full_name(document.getElementById('first_name').value,  document.getElementById('last_name').value);
}
var学生=[
{第一个:'Max',最后一个:'Smith'},
{第一个:'Ardon',最后一个:'Bailey'},
{第一个:'Todd',最后一个:'Gumke'},
{第一个:'Bob',最后一个:'Plug'},
{第一个:'Trub',最后一个:'Lee'}];
函数全名(名、姓){
var foo=假;
for(var i=0;i
名字和姓氏是一个条件。我相信您打算将其作为字符串连接

if (first_name + last_name === students_first[i] + students_last[i]){

如果我理解正确:

替换此行:

if ((first_name && last_name) === (students_first[i] && students_last[i])){
for(i = 0; i < (students_first && students_last.length); i++) {
为此:

if (first_name == students_first[i] && last_name == students_last[i]){
for(i = 0; i < students_first.length && i < students_last.length; i++) {
这一行:

if ((first_name && last_name) === (students_first[i] && students_last[i])){
for(i = 0; i < (students_first && students_last.length); i++) {
for(i=0;i<(学生第一名和学生最后一名长度);i++){
为此:

if (first_name == students_first[i] && last_name == students_last[i]){
for(i = 0; i < students_first.length && i < students_last.length; i++) {
for(i=0;i

然后再试一次。

我在代码中看到了多个stragne内容。你能简单地解释一下你想要实现什么吗?也许分享你当前的输出和期望的输出是个好主意。如果这是一个搜索,你可能不希望在循环中出现警报。另外,你的
If
语句可能做不到你想要的你想解释一下代码应该做什么吗?我想在输入中用数组中相同的地方值键入第一个和最后一个名字。如果第一个和最后一个名字不匹配,我希望它能发出警报。希望这是明确的。谢谢你的回应。也考虑拥抱JSON:但是如果实名是“代码> ABC DEF和用户键入
abcd
ef
,则不会显示错误,因为
abc+def==abcdf
abcd+ef==abcdf
我没有说逻辑是正确的,:p感谢您的建议。