gpt4 book ai didi

javascript hasOwnProperty() 未找到属性

转载 作者:行者123 更新时间:2023-12-03 12:09:46 26 4
gpt4 key购买 nike

使用 angularjs 和 firebase 编写一个函数,该函数应该检查是否可以在数据库中找到 currentUser。目前“attendings”属性仅包含一个用户,即“Peter Pan”

服务/party.js

isAttending: function (party) {
if (User.signedIn() && party.attendings) {
console.log(User.getCurrent().username); //Writes out: Peter Pan
console.log(eve.attendings); //Writes out: Peter Pan
console.log(party.attendings.hasOwnProperty(
User.getCurrent().username); //Writes out: false
return party.attendings.hasOwnProperty(User.getCurrent().username);
}
}

创建派对对象时存储彼得潘:

var Party = {
..
create: function (p) {
...
party.attendings = user.username;
...
}
}

用户显然存储在“attendings”中,但为什么 hasOwnProperty() 找不到它?

最佳答案

我认为您对 hasOwnProperty 的工作原理有误解。

如果对象有一个属性,hasOwnProperty 将返回,在您的情况下,例如,一方有一个属性参加,但这就是它要检查的全部内容,它不会检查该属性的值是什么(在本例中是 Peter平底锅)。

现在,我假设您希望 attends 成为一个列表,在这种情况下您需要在列表中查找一个值,有多种方法,如果您可以使用 jQuery,您可以执行以下操作:

$.inArray( User.getCurrent().username, [ party.attendings ] );

如果您不这样做,请查看不同的替代方案,只需在 javascript 中搜索数组中的值即可。

关于javascript hasOwnProperty() 未找到属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25013317/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com