我有一系列商品价格
var st = [0, 1, 2, 0, 3, 0, 4, 0, 0, 0, 0, 0]
然后找出玩家获得多少钱运行此功能
function buy(a) {
money += st[return a;]
}
这应该是
function buy(a) {
money += st[1]
}
按下按钮以运行buy(),看起来像这样
<button onclick='buy(1)'>Sell</button>
当他们按下此按钮时,它应该返回1并因此向玩家帐户添加1美元但我收到并且错误
Unexpected keyword 'return'
如果您需要更多信息,我很乐意提供
fidde如果你需要它
答案 0 :(得分:2)
您有语法错误
function buy(a) {
return money += st[a];
}
答案 1 :(得分:2)
正如错误消息所示,return
没有放置它的位置。您已将语句(return a;
)放在属性访问器(st[...]
)中。那是无效的。
从您使用buy
的方式来看,您根本不需要return
:
function buy(a) {
money += st[a];
}
但是如果你确实希望它返回一个值,你可以单独使用return
。例如,如果您想返回money
的更新值:
function buy(a) {
money += st[a];
return money;
}
(从技术上讲,return money += st[a];
也会返回money
的更新值,但为了强调和清晰,我会单独展示它们。)
或者,如果您出于某种原因想要返回a
:
function buy(a) {
money += st[a];
return a;
}
答案 2 :(得分:2)
语法错误,你不能在数组索引中使用return。
function buy(a) {
money += st[a];
return money;
}
或者您可以使用:
function buy(a) {
return (money += st[a]);
}
假设您的货币变量已定义 ...