JavaScript测试:将布尔值更改为对象数组

JavaScript测试:将布尔值更改为对象数组,javascript,arrays,testing,boolean,javascript-objects,Javascript,Arrays,Testing,Boolean,Javascript Objects,我正在用JavaScript做一个测试。我被要求做以下工作: 函数Isofline(用户、名称){ //名为“IsOffline”的函数接收一个名为“users”的对象数组和一个名为“name”的字符串作为参数。 //每个对象都有一个属性“name”,它是一个字符串,还有一个属性“online”,它是一个布尔值。 //如果用户脱机,函数必须返回true,否则返回false。 //例: //变量用户=[ // { //姓名:“托尼”, //在线:真的 //}, // { //名称:“emi”, /

我正在用JavaScript做一个测试。我被要求做以下工作:

函数Isofline(用户、名称){
//名为“IsOffline”的函数接收一个名为“users”的对象数组和一个名为“name”的字符串作为参数。
//每个对象都有一个属性“name”,它是一个字符串,还有一个属性“online”,它是一个布尔值。
//如果用户脱机,函数必须返回true,否则返回false。
//例:
//变量用户=[
// {
//姓名:“托尼”,
//在线:真的
//},
// {
//名称:“emi”,
//在线:真的
//},
// {
//姓名:'约翰',
//在线:错误
//}
//];
//
//Isofline(用户,“emi”)返回false
//您的代码在这里:

我有点迷路了,不知道如何开始。非常感谢您的帮助。

您可以使用
Array.find()
方法在数组中搜索项目

函数Isofline(用户、名称){
const foundUser=users.find(user=>user.name==name)
返回foundUser?!foundUser.online:“未找到用户”;
}
变量用户=[
{name:'toni',online:true},
{name:'emi',online:true},
{name:'john',online:false},
];
//在线用户
console.log(IsOffline(用户“emi”))
//脱机用户
log(IsOffline(用户,'john'))
//未知用户

console.log(IsOffline(users,'tom'))
这是否回答了您的问题?您必须查看
users
数组以找到
name
属性等于
name
参数的项,并返回该项的
online
属性的相反项。提示:您可能需要查看
array.prototype.find()
()作为将来的参考,您可能还想看看Ehm…您返回的结果与用户离线时的预期完全相反,此时用户的在线状态为
false
;)@secan耶!愚蠢的错误,已修复。