Javascript 为什么比较对象值返回false?

Javascript 为什么比较对象值返回false?,javascript,html,css,mongodb,mongoose,Javascript,Html,Css,Mongodb,Mongoose,我正在创建一个电子邮件检查器,以查看前端输入的电子邮件是否与后端输入的电子邮件完全相同。我已经成功地获得了前端和后端电子邮件,但每次我检查它们时都返回false,即使它们的值相同。我正在使用Object.is来检查值是否相同,我也尝试了典型的(data.email==user.email)方法,但它仍然返回false,即使值相同 router.get('/checkemail',(req,res)=>{ let data = req.query; console.log(data)

我正在创建一个电子邮件检查器,以查看前端输入的电子邮件是否与后端输入的电子邮件完全相同。我已经成功地获得了前端和后端电子邮件,但每次我检查它们时都返回false,即使它们的值相同。我正在使用Object.is来检查值是否相同,我也尝试了典型的(data.email==user.email)方法,但它仍然返回false,即使值相同

router.get('/checkemail',(req,res)=>{
  let data = req.query;
  console.log(data)
  User.findOne({
    username: data.username,
  },function(error,user){
  if(error){
    res.status(401).send(error)
  } else if(Object.is(user.email, data.email)) {
    res.status(200).send(true)
  } else {
    res.status(401).send(false)
  }
})
  })
可以尝试对object.is的每个参数使用trim()函数吗

Object.is(user.email.trim(), data.email.trim())

user.email
data.email
的值是什么?domdiddy125@gmail.comMake确保没有多余的空格或某些外来字符。控制台.log('%o%o',user.email,data.email)的输出是什么?它们完全相同,可以在本地运行吗?