从作为参数传递的变量中删除引号
Removing quotes from a variable passed as an argument
我有一个名为 color
的变量,它是一个 HSL 值,我试图将它传递给一个函数,该函数通常采用一系列数字作为 HSL 值。
这行不通:
var color = "210,50,50";
stroke(color);
这确实有效:
stroke(210,50,50);
我尝试了一堆字符串替换函数,例如:
stroke(color.replace(/\"/g,""))
什么给了?
该字符串是单个值。 stroke()
函数需要 3 个单独的值。
您可以使用 split()
函数将字符串拆分为单个数字。像这样:
var color = "210,50,50";
var colorArray = split(color, ",");
var red = colorArray[0];
var green = colorArray[1];
var blue = colorArray[2];
stroke(red, green, blue);
可以在 the reference 中找到更多信息。
实际上,robstarbuck 指出 stroke()
函数也将数组作为参数,因此您甚至可以这样做:
var color = "210,50,50";
var colorArray = split(color, ",");
stroke(colorArray);
最好将您的值定义为数组并将其传递给 stroke as your one argument (see docs)。
var color = [210, 50, 50]
stroke(color)
我有一个名为 color
的变量,它是一个 HSL 值,我试图将它传递给一个函数,该函数通常采用一系列数字作为 HSL 值。
这行不通:
var color = "210,50,50";
stroke(color);
这确实有效:
stroke(210,50,50);
我尝试了一堆字符串替换函数,例如:
stroke(color.replace(/\"/g,""))
什么给了?
该字符串是单个值。 stroke()
函数需要 3 个单独的值。
您可以使用 split()
函数将字符串拆分为单个数字。像这样:
var color = "210,50,50";
var colorArray = split(color, ",");
var red = colorArray[0];
var green = colorArray[1];
var blue = colorArray[2];
stroke(red, green, blue);
可以在 the reference 中找到更多信息。
实际上,robstarbuck 指出 stroke()
函数也将数组作为参数,因此您甚至可以这样做:
var color = "210,50,50";
var colorArray = split(color, ",");
stroke(colorArray);
最好将您的值定义为数组并将其传递给 stroke as your one argument (see docs)。
var color = [210, 50, 50]
stroke(color)