检查Javascript对象中是否存在属性

检查Javascript对象中是否存在属性,javascript,uncaught-reference-error,Javascript,Uncaught Reference Error,类用户{ 构造函数(用户名、说明){ this.username=用户名 this.description=说明 } 打印信息(信息){ 如果(本文件中的信息){ 返回信息 } } } 让newUser=newUser(“testUsername”、“testDescription”) newUser.printInfo(username)传递username属性名称时忘记了引号。传递的username参数必须是字符串newUser.printInfo(“用户名”) 如果没有引号,它将尝试引用名

类用户{
构造函数(用户名、说明){
this.username=用户名
this.description=说明
}
打印信息(信息){
如果(本文件中的信息){
返回信息
}
}
}
让newUser=newUser(“testUsername”、“testDescription”)

newUser.printInfo(username)
传递username属性名称时忘记了引号。传递的
username
参数必须是字符串
newUser.printInfo(“用户名”)

如果没有引号,它将尝试引用名为
username
的(不存在的)全局变量

请注意,
printInfo
函数只返回属性名称(与参数相同),而不是实际值。如果您想返回用户名值,您必须以
this[info]
的身份访问该密钥:

    ...
    printInfo(info){
        if (info in this){
            return this[info];
        }
    }

传递用户名属性名称时忘记了引号。传递的
username
参数必须是字符串
newUser.printInfo(“用户名”)

如果没有引号,它将尝试引用名为
username
的(不存在的)全局变量

请注意,
printInfo
函数只返回属性名称(与参数相同),而不是实际值。如果您想返回用户名值,您必须以
this[info]
的身份访问该密钥:

    ...
    printInfo(info){
        if (info in this){
            return this[info];
        }
    }