我试图将变量cord1x和cord1y放入段数组中,但它可以工作。数组中的变量 - Javascript
这里是我的代码:
var cord1x = 121;
var cord1y = 446;
segments = [{x: cord1x, y: cord1y}];
我如何成为变量引入链段字符串?
我试图将变量cord1x和cord1y放入段数组中,但它可以工作。数组中的变量 - Javascript
这里是我的代码:
var cord1x = 121;
var cord1y = 446;
segments = [{x: cord1x, y: cord1y}];
我如何成为变量引入链段字符串?
基于您的评论了解更多,也许Array#push
是你想要什么:
segments = [];
//foreach point in some set
// compute cord1x, cord1y
segments.push({x: cord1x, y: cord1y});
然后segment
成为对象的数组,每个代表一个2d点,与你的例子一致segments = [{x: 121, y: 446}, {x: 164, y: 384}, {x: 190, y: 271}, {x: 186, y:198}, {x: 180, y:60}]
基于单独的问题:
随着segments = [{x: cord1x, y: cord1y}];
,segments
成为包含一个匿名对象阵列。 cord1x
变得可访问,因为segments[0].x
和cord2x
变得可访问为segments[0].y
。
使用segments = {x: cord1x, y: cord1y}
,segments
成为属性为x
和y
的对象。 cord1
变为segments.x
,cord2
变为segments.y
。
With segments = [cord1x, cord1y]
,segments
成为两个整数的数组。 cord1x
变为可访问,因为segments[0]
和cord1y
变得可访问为segments[1]
。
With segments = '{x: '+cord1x+', y: '+cord1y+'}'
,segments
成为形式为{x:121, y:446}
的字符串。缺点是cord1x
和cord1y
不容易检索。好处是segments
现在可以通过使用===
进行比较而不是身份相等。
嘿嘿。非常感谢你!这对我帮助很大。你的第二个评论是我寻找的。 :) – paul 2013-03-22 15:50:37
为此,您将在JavaScript中使用push方法。
var coordinate1 = Coordinates.getCoordinate(100, 200);
var coordinate2 = Coordinates.getCoordinate(200, 300);
var coordinate3 = Coordinates.getCoordinate(300, 400);
var coordinates = [coordinate1, coordinate2];
coordinates.push(coordinate3)
我不建议引用w3schools。改用MDN。网站上有很多可怕的建议。另外,你为什么在你的例子中使用水果(除了因为这个例子是从该网站复制粘贴)? – 2013-03-22 15:43:29
这可能工作。
var Coordinates = function() {};
Coordinates.onLoad = function() {
var coordinate1 = Coordinates.getCoordinate(100, 200);
var coordinate2 = Coordinates.getCoordinate(200, 300);
// access them like coordinate1.x, coordinate1.y
};
Coordinates.getCoordinate = function(x, y) {
var coordinate = {
x: x,
y: y
};
return coordinate;
};
你知道'Coordinates.onLoad'永远不会被调用,除非手动吗? – 2013-03-22 15:53:46
_“它不工作”_是什么意思? – 2013-03-22 15:25:34
'segments'是一个包含一个对象的数组。定义“不起作用”。 – 2013-03-22 15:25:54
我完全不理解最后一段。 “我如何成为”似乎意味着你变成了别的东西,这显然不是在这里。 – 2013-03-22 15:28:17