Javascript 将对象推送到for循环中的数组

Javascript 将对象推送到for循环中的数组,javascript,syntax,Javascript,Syntax,所以我对一些看似简单的代码有一个问题。 我试图计算1/2斜率上的点。 但我得到的只是空数组对象 const canvas={ 宽度:1200, 身高:600 }; 常量slopeValues=[]; for(设i=canvas.height/2;i

所以我对一些看似简单的代码有一个问题。 我试图计算1/2斜率上的点。 但我得到的只是空数组对象

const canvas={
宽度:1200,
身高:600
};
常量slopeValues=[];
for(设i=canvas.height/2;iconsole.log(slopeValues)
您的for循环条件已关闭。您可以设置
i=height/2
,并将条件设置为
i
。条件已为false,因为
(i==高度/2)!=(i<高度)

试试这个:

const canvas={
宽度:1200,
身高:600
};
常量slopeValues=[];
对于(设i=canvas.height/2;i>=0/2;i--){
设obj={};
obj.x=i;
坡度值推(obj);
}

console.log(slopeValues)
您的for循环条件已关闭。您可以设置
i=height/2
,并将条件设置为
i
。条件已为false,因为
(i==高度/2)!=(i<高度)

试试这个:

const canvas={
宽度:1200,
身高:600
};
常量slopeValues=[];
对于(设i=canvas.height/2;i>=0/2;i--){
设obj={};
obj.x=i;
坡度值推(obj);
}

log(slopeValues)
初始化I为300,并在I<300时循环。当循环第一次尝试运行时,它的计算结果为false,因此for循环中的代码被忽略。

初始化I为300,并在I<300时循环。当循环第一次尝试运行时,其计算结果为false,因此忽略for循环中的代码。

let i=canvas.height/2;i
如果
i
被初始化为等于
canvas.height
,那么它将永远不会是
您在循环中将i初始化为canvas.height/2,这不符合条件ilet i=canvas.height/2;i
如果
i
被初始化为等于
canvas.height
,那么它将永远不会是
您在循环中将i初始化为canvas.height/2,这不符合条件i