javascript函数返回需要澄清

时间:2013-09-05 12:33:38

标签: javascript function

在这个函数中,我期望返回值是变量值的增量。但是,我正在获得原始价值,

这是我的功能:

var num = function(){
    var a = 0;
    return a++;
}

alert(num()); //it giving the result as 0 instead of 1...why?

任何人都可以向我解释一下吗?

2 个答案:

答案 0 :(得分:4)

++在'return'之后起作用:

return a++ ==>返回a,然后将{1}添加到a

return ++a ==>将{1}添加到a,然后返回

请看this answer

答案 1 :(得分:1)

尝试

var num = function(){
    var a = 0;
    return ++a;
}

++ a给出操作后的值a ++给出值然后执行操作