Javascript 排行榜示例,与'混淆;所选名称';返回值
在Leadboard示例中,在leadboard.html中,对{{selected_name}}的调用如何返回所选的_name字符串,但在函数所在的leadboard.js文件中,它返回布尔值?我知道这更像是一个JS问题,但我只是想让我的头脑专注于此你在想下面的代码吗Javascript 排行榜示例,与'混淆;所选名称';返回值,javascript,meteor,Javascript,Meteor,在Leadboard示例中,在leadboard.html中,对{{selected_name}}的调用如何返回所选的_name字符串,但在函数所在的leadboard.js文件中,它返回布尔值?我知道这更像是一个JS问题,但我只是想让我的头脑专注于此你在想下面的代码吗 Template.leadboard.selected\u name=函数(){ var player=Players.findOne(Session.get(“selected_player”); 返回player&&play
Template.leadboard.selected\u name=函数(){
var player=Players.findOne(Session.get(“selected_player”);
返回player&&player.name;
}
这不会返回布尔值,尽管&&
-运算符是布尔运算符。“正确的方法”当然是让返回player.name
,但如果Players.find
返回null
(不存在具有所选id的玩家),则此代码在执行时会崩溃。为了避免这种情况发生,使用了&&
-运算符的小技巧,这确保了player.name
仅在player
为非falsye(非null
时执行)。操作符的结果是它的右侧,因此返回播放器的名称(或者null
,如果是null
,则返回它的左侧)