let functionA = function (a) { this.a = a return function (b) { return this.a + b } } let argA = function (a, b) { return a debugger }(1, 2) // 实际上 argA 就等于 1,** 这个地方的 b 没有被用到 **
La formule originale est simplifiée en :
let test = functionA(argA)
Une fois cette phrase exécutée,testest en fait
function (b) { return this.a + b } // ** 这是一个带一个参数的函数,执行 test(4) 时 b 就是 4 **
Mémoire
La formule originale est simplifiée en :
Une fois cette phrase exécutée,
test
est en faitEt en ce moment
this.a
等于1
。因此test(4)
结果为5
Il est évidemment 5 heures
Répartition
Si vous ne comprenez toujours pas cela, vous devez apprendre les bases
Nous devons d'abord comprendre que la variable test est en fait une fonction, comme suit
.La partie extérieure est une fonction qui est exécutée immédiatement. Premièrement,
.Le résultat de cette partie est 1, c'est-à-dire que le code peut être simplifié à :
Dans le code ci-dessus,
a=1
, donc dans test(4), on obtient :