如何使用此JavaScript方法将参数与对象强制转换值进行比较?

如何使用此JavaScript方法将参数与对象强制转换值进行比较?,javascript,javascript-objects,Javascript,Javascript Objects,定义一个名为roleOf的方法,该方法将参与者的名称作为参数并返回该参与者的角色。如果演员不在电影中,返回“不在这部电影中”。例如:roleOf(“Jessica Chastain”)返回“Murph”。提示:方法可以使用关键字this访问对象的属性。例如:this.cast访问对象的cast属性 --代码-- var movie={//将使用不同的演员和电影测试代码 名称:“星际”, 导演:“克里斯托弗·诺兰”, 作曲家:“汉斯·齐默”, 演员阵容:{ “马修·麦康纳”:“库珀”, “安妮·

定义一个名为roleOf的方法,该方法将参与者的名称作为参数并返回该参与者的角色。如果演员不在电影中,返回“不在这部电影中”。例如:roleOf(“Jessica Chastain”)返回“Murph”。提示:方法可以使用关键字this访问对象的属性。例如:this.cast访问对象的cast属性

--代码--

var movie={//将使用不同的演员和电影测试代码
名称:“星际”,
导演:“克里斯托弗·诺兰”,
作曲家:“汉斯·齐默”,
演员阵容:{
“马修·麦康纳”:“库珀”,
“安妮·海瑟薇”:“品牌”,
“Jessica Chastain”:“Murph”,
“马特·达蒙”:“曼”,
“麦肯齐·福伊”:“年轻的墨菲”
},
角色:功能(actorName){
如果(actorName!=this.cast){//我的代码
log(“不在此电影中”);//我的代码
}//我的代码
else{//我的代码
归还这个。施放[actorName];
}//我的代码
}

};使用短路运算符,您可以只写:

return this.cast[actorName] || 'Not in this movie.';

使用短路运算符,您可以只写:

return this.cast[actorName] || 'Not in this movie.';

非常感谢。JavaScript的新特性。这是正确的。我似乎真的把它复杂化了。如果你不知道短路运算符,还有什么替代方法呢?三元运算符呢?:)<代码>返回此.cast[actorName]?this.cast[actorName]:“不在这部电影中。”
否则,只需使用一个简单的if/else,它也会这样做:
if(this.cast[actorName]){返回这个.cast[actorName];}否则{返回“不在这部电影中”;}
非常感谢。这更容易理解:)我还没有学会短路操作。谢谢。JavaScript的新特性。这是正确的。我似乎真的把它复杂化了。如果你不知道短路运算符,还有什么替代方法呢?三元运算符呢?:)<代码>返回此.cast[actorName]?this.cast[actorName]:“不在这部电影中。”否则,只需使用一个简单的if/else,它也会这样做:
if(this.cast[actorName]){返回这个.cast[actorName];}否则{返回“不在这部电影中”;}
非常感谢。这更容易理解:)我还没有学会短路操作。