从作为参数传递的变量中删除引号

时间:2017-09-08 02:05:32

标签: javascript p5.js

我有一个名为color的变量,它是一个HSL值,我试图将它传递给一个函数,该函数通常将一系列数字作为HSL值。

这不起作用:

var color = "210,50,50";
stroke(color);

这确实有效:

stroke(210,50,50);

我尝试过一系列字符串替换功能,如:

stroke(color.replace(/\"/g,""))

是什么给出的?

2 个答案:

答案 0 :(得分:3)

最好将您的值定义为数组,并将其作为您的一个参数传递给stroke。(参见docs)。

var color = [210, 50, 50]
stroke(color)

See Example

答案 1 :(得分:1)

字符串是单个值。 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);