Javascript 将函数作为参数传递不需要';行不通

Javascript 将函数作为参数传递不需要';行不通,javascript,Javascript,我在做一个纸牌游戏,你试着得到4对,每一轮一个玩家问另一个玩家他们是否有一定的卡值,如果他们有,那么他们应该把所有的卡值的球员要求 在askPlayer()函数中,我会提示哪个玩家应该收到问题。然后我返回输入的内容 function askPlayer() { var askedPlayer = prompt('Which player do you want to ask?'); return askedPlayer; } 在askCard()函数中,我获取askPlayer

我在做一个纸牌游戏,你试着得到4对,每一轮一个玩家问另一个玩家他们是否有一定的卡值,如果他们有,那么他们应该把所有的卡值的球员要求

在askPlayer()函数中,我会提示哪个玩家应该收到问题。然后我返回输入的内容

function askPlayer() {
    var askedPlayer = prompt('Which player do you want to ask?');
    return askedPlayer;
}
在askCard()函数中,我获取askPlayer()返回的任何内容,并在askCard()的提示符中使用它

但是,在代码后面的else语句中,我调用了这两个函数,首先调用askPlayer(),然后使用askPlayer()返回的变量调用askCard()。这就是问题所在,当我这样写时,它会在提示消息中显示整个函数代码,而不是函数返回的内容。但是当我添加这样的参数时:
askCard(askPlayer())它再次调用askPlayer。。我做错了什么?以前一直使用这种方法,但它已经起作用了,所以我不明白为什么它现在不起作用

else {
    askPlayer();
    askCard(askPlayer);
}
您需要调用函数,而不仅仅是引用它:

function askCard(player) {
    var whichCard = prompt(player() + ', all your:');
    // () here ------------------^^
    return whichCard;
}
函数askPlayer(){
var askedPlayer=prompt('您想问哪个玩家?');
返回歪斜层;
}
功能askCard(播放器){
var whichCard=prompt(player()+',您所有的:');
归还信用卡;
}
document.getElementById(“btn”).onclick=function(){
askCard(askpayer);
};

Ask
这会产生与我解释的在else语句中写入()相同的结果。@Chrillewoodz:不,不会。我添加了一些片段来演示这一点。哦,你忘了我必须将其保存在变量中。。傻。谢谢
function askCard(player) {
    var whichCard = prompt(player() + ', all your:');
    // () here ------------------^^
    return whichCard;
}