从垂直线划分的变量中提取多个字符串

Extract multiple strings from variable divided by vertical line

在我们客户的网站上有一个 javascript 变量,页面类别由垂直线分隔。这是示例:

category_name = "Products|Healthy|Chia pudding";

我需要提取这些类别并将其放入单独的变量中:

category_name_1 = "Products";
category_name_2 = "Healthy";
category_name_3 = "Chia pudding";

你能帮帮我吗?

您可以使用split函数

category_name_array = category_name.split("|"); 
     -> ["Products", "Healthy", "Chia pudding"]

然后您可以像这样访问它:

console.log(category_name_array[0]); -> "Products"
console.log(category_name_array[1]); -> "Healthy"
console.log(category_name_array[2]); -> "Chia pudding"

使用ES.next解构:

const [
    category_name_1, 
    category_name_2,
    category_name_3
] = category_name.split('|');

使用 ES5 语法:

var names = category_name.split('|');
var category_name_1 = names[0];
var category_name_2 = names[1];
var category_name_3 = names[2];

更好的方法是只使用一个简单的数组而不是变量。所以使用上面的例子,每当你需要第一个类别时,只需使用names[0]来引用它。