比较对象JavaScript的值

问题描述

我在JS中有一个这样的对象:

var getToDovalue = document.getElementById("todoInput").value;
var nameOfTeamMember = "Tobias";


var person = new Object();

person.task = "Task: " + getToDovalue;
person.member = "Member: " + nameOfTeamMember;

但是当我尝试在if语句中输入“ nameOfTeamMember”的值时出现问题:

var mem = person.member;

if (mem == "Tobias") {

    console.log("works");
  }

这不起作用。但是,当我只是在if语句之外使用console.log“ var mem”时,它给了我“ Member:Tobias”。有什么建议?我对JS还是有点陌生​​,因此可以通过比较来解决问题

解决方法

与您的代码有关的问题是,正如您从console.log结果指出的那样,person.member的值是“ Member:Tobias”,这是您在下面串联代码行的结果。名称,并使用字符串“ Memeber:”将其分配给member属性。

person.member =“成员:” + nameOfTeamMember;

您可以用来进行比较的一个选项是:

if(mem.contains(“ Tobias”,8){

console.log("works");

} 8是这样的,所以您的搜索从冒号(:)后面开始,因此您不包括“ Member:”,而是后面的内容,即实际的成员名称。