Javascript 函数从数组中绘制(画布)多个项目

Javascript 函数从数组中绘制(画布)多个项目,javascript,html,canvas,draw,Javascript,Html,Canvas,Draw,我有一个seat函数,它接受许多值,其中3个用于在画布上画圆圈 每个圆圈都是一个以个人命名的变量,包含座椅功能中的值 我使用以下函数绘制各个圆: ctx.fillPerson = function(p){ this.fillStyle = p.fillStyle; this.arc(p.centerX, p.centerY, p.radius, 0, 2*Math.PI, false);

我有一个
seat
函数,它接受许多值,其中3个用于在画布上画圆圈

每个圆圈都是一个以个人命名的变量,包含
座椅功能中的值

我使用以下函数绘制各个圆:

ctx.fillPerson = function(p){ this.fillStyle = p.fillStyle; this.arc(p.centerX, p.centerY, p.radius, 0, 2*Math.PI, false); this.fill(); } 我的想法是逐步遍历数组并执行
beginPath()
ctx.fillPerson()用于每个数组项。我认为(?)
indexOf
是否是正确的工具,但我不确定它是否正确,以及如何获得所需的结果

非常感谢您的帮助,如果我说的不恰当,请纠正我(也不是很时髦;)

谢谢

ctx.fillPerson(s[i])


我不知道你是否需要结束每个循环的路径。

我想你想要的是
s[I]
而不是
indexOf(s)
?这可能是正确的,我做了更改,但当我使用
ctx.fillSeats(myArray)时仍然没有绘制任何内容结果是正确的,是我的打字错误造成的。thanksI做了这个更改,但是当我使用
ctx.fillSeats(myArray)时,它仍然没有画任何东西在开始分组之前,我知道我可以只列出
ctx.fillPerson(myVar)每个都有一个
ctx.beginPath()之前,它运行良好。
            ctx.fillSeats = function(s){
                for ( var i=0; i<s.length; ++i ){
                    ctx.beginPath();
                    ctx.fillPerson(indexOf(s));
                }
            }