-1
// Declare a function where the formal parameter executes some operation.
// It will display the error "Unexpected token ++".
function log(num++) {
    return num;
}

// Declare a normal function.
function logNormal(num) {
    return num;
}

// Calls the logNormal function, and the parameter deliverd will execute some operation.
var a = 5;
logNormal(a++); // 5
logNormal(a); // 6
logNormal(++a); // 7

现在问题来了,为什么形参不能执行操作呢?

4

1 回答 1

1

简短的回答:这根本不包含在 ECMAStandard 语法规范中。

长答案:
你为什么要这样做?

您的问题有两种“解决方案”:

function log() {
    num++;
    return num;
}

function log2() {
    return ++num;
}

参数列表应该只包含参数的声明(可能还有它们的默认值)。在我看来,不多也不少。

于 2013-09-17T16:25:38.677 回答