为什么我不能将这个简单的 JavaScript 测试程序执行到 JSFiddle 中?

Why I can't perform this simple JavaScript test program into a JSFiddle?

我是 JavaScript 的新手,我有点怀疑。

我创建了这个 JSFiddle:https://jsfiddle.net/AndreaNobili/1up938xf/

我只定义了 JavaScript 函数,该函数执行简单的求和(没有 HTML)并通过警报将结果显示到弹出窗口中

var add = function(x, y) {

  z = z + y;
  return z;
}

var sum = add(2, 3);

alert(sum);

问题是,当我尝试 运行 这个测试应用程序时,我什么也看不到。为什么?我错过了什么?

ReferenceError: z is not defined

你还漏了一个 var。首先定义 z 或(更有可能)使用 x 代替:

var add = function(x, y) {
  var z = x + y;
  return z;
}

var sum = add(2, 3);

alert(sum);

这里是 Fiddle:https://jsfiddle.net/1up938xf/1/

实际上,这很容易修复。

一:你的加法函数实际上加法不正确。应该是 x + y 而不是 z + y

function(x, y) {

  z = x + y;
  return z;
}

它导致了错误,因为您试图使用您从未声明或分配的变量 (z + y)

这可能是因为您调用的是 z 而不是 x,并且第一次调用时,z 尚未定义

您正在使用 "z = z + y;" 但您想要 "z = x + y;"

第一个导致 JS 错误并且未显示警报