gpt4 book ai didi

javascript - 使用 JavaScript 从函数返回数组。反转返回数组的顺序

转载 作者:行者123 更新时间:2023-12-02 17:37:47 25 4
gpt4 key购买 nike

//draw the points
//var pointOrigins1=new Array();
//pointOrigins1 = drawPoints(canvas, context);
//var pointOrigins2=new Array();
//pointOrigins2 = pointOrigins1;
//pointOrigins2.reverse();
//Place a donut on each point origin
//circlePointOrigins(canvas,context,pointOrigins1);
console.log(drawPoints(canvas, context));

//console.log(pointOrigins1);
//console.log(pointOrigins2);

//renderCheckers(canvas,context,pointOrigins1,pointOrigins2,checkers1,checkers2,initiator);





function drawPoints(canvas,context) {
pointOrigins.push(drawTriangle(50+i,550,false,'black',canvas,context));
return pointOrigins;
}

运行下面的代码。在上面的代码中,我注释掉了我一直在尝试但尚未起作用的内容。我的目标是反转从drawPoints函数返回的返回数组:

console.log(drawPoints(canvas, context));

运行,输出如下在控制台中:

[Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object]

我注意到,在 gameview 的渲染事件中,如果我调用:

var pointOrigins1=new Array();
pointOrigins1 = drawPoints(canvas, context);
var pointOrigins2=new Array();
pointOrigins2 = pointOrigins1;
pointOrigins2.reverse();

反过来则完全没有效果。我打算使用 .reverse 函数与 JavaScript 数组一起使用,但现在它不起作用。

我还不确定如何解决 .reverse 问题,但我认为这可能与我返回函数的方式有关。

感谢您的发帖......

最佳答案

Array.prototype.reverse修改给定的数组。在您的示例中,pointOrigins2pointOrigins1 最终都包含相同的反转数组。尝试改变线路

var pointOrigins2=new Array();
pointOrigins2 = pointOrigins1;

var pointOrigins2=pointOrigins1.slice();

关于javascript - 使用 JavaScript 从函数返回数组。反转返回数组的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22470753/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com