4

我最近在一个 WebGL 教程中遇到了这个变量初始化:

var mouse = { x: 0, y: 0 }, INTERSECTED;

我从未见过这种格式。我知道它正在创建一个具有 x 和 y 属性的对象,但是 INTERSECTED 与变量/对象有什么关系?

谢谢!

4

4 回答 4

9

该行只是简单地声明两个变量(mouseINTERSECTED),并初始化mouse{ x: 0, y: 0}

INTERSECTED不一定与 相关mouse,尽管清晰的代码只应在高度相关的情况下将多个变量一起声明(即便如此,许多人更喜欢在单独的行上声明每个变量)。

于 2012-12-05T00:19:13.620 回答
3

INTERSECTED不相关mouse。这只是初始化两个变量的一种方式。我猜它INTERSECTED在那里,所以它被视为局部变量。

于 2012-12-05T00:19:33.897 回答
3

我可能弄错了,但我认为它就像

var A=3,B;

定义值为 3 的 A 和未初始化的 B。INTERSECTED 只是另一个变量。

于 2012-12-05T00:23:04.580 回答
0

只需加上我的 2 美分:通常的约定是将它们写在两个单独的行上,这当然可以避免任何混淆:

var mouse = { x: 0, y: 0 },
    INTERSECTED;

(另请注意,约定是有一个四个空格缩进很好地对齐变量)

于 2012-12-05T00:40:53.383 回答