3 回答
TA贡献1804条经验 获得超8个赞
您还可以使用正则表达式来获取这些值。
var arr = [
"pass/DE-NO-RS-BE-FI-PT-BG-DK-LT-LU-HR-LV-FR-HU-SE-SI-ME-SK-GB-IE-MK-EE-CH-GR-IT-ES-AT-CZ-PL-RO-NL-TR-BA/**adult/2ndclass**",
"pass/DE-NO-RS-BE-FI-PT-BG-DK-LT-LU-HR-LV-FR-HU-SE-SI-ME-SK-GB-IE-MK-EE-CH-GR-IT-ES-AT-CZ-PL-RO-NL-TR-BA/**youth/2ndclass**"
];
var results = [];
for (var i=0; i < arr.length; i++) {
var matches = arr[i].match(/\*\*(.+)\/(.+)\*\*/);
if(matches && matches.length >= 3)
results.push([matches[1], matches[2]]);
}
console.log(results);
您可以在此处尝试代码 https://jsfiddle.net/p84eftL7/1/
TA贡献1876条经验 获得超5个赞
首先,我没有完全回答你的问题。但据我所知,您希望这2个值位于数组中字符串的末尾。你可以试试这样的东西
var a, b;
for(s in YOUR_ARRAY){
[...other, a, b] = YOUR_ARRAY[s].split("/");
console.log(a, b);
//Do whatever you want to do with a,b
}
让我解释一下我自己,首先你需要迭代你的数组,这就是为什么我们在这里有一个“for”循环。然后,对于由“YOUR_ARRAY[s]”给出的每个字符串,您将使用“/”作为分隔符拆分字符串。其余部分非常简单。供您参考,请浏览这些链接 https://www.w3schools.com/js/js_loop_for.asp https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment
更新:正如评论中提到的。如果你想有一个函数,那么
function processValues(arr){
var a, b;
for(s in arr){
[...other, a, b] = arr[s].split("/");
console.log(a, b);
//Do whatever you want to do with a,b
}
}
processValues(YOUR_ARRAY);
TA贡献1966条经验 获得超4个赞
最后,我所做的是以下几点
由于我必须引用回变量的名称,因此我使用以下内容来切片数组,以便可以使用索引号来引用需要检索的值:
function() {
var myStringArray = {{MY_ARRAY}};
var arrayLength = myStringArray.length;
var output = []
for (var i = 0; i < arrayLength; i++) {
var string = myStringArray[i].split("/",4)
/*pull index 2 and 3 from string and convert to string*/
output.push(string)
}
return output
}
之后,我必须循环上述信息中正在推送的新数组
由于我只需要从该NEW_ARRAY_2拆分特定索引,因此我使用以下内容来执行此操作
function() {
var products = {{NEW_ARRAY_2}};
var arr = []
for (var i=0; i < products.length; i++) {
var prod = products[i];
var matches = prod[2];
arr.push(matches);
}
var list = arr.join(', ')
return list
}
2种产品的样品退货:“成人,青年”
感谢您的支持
添加回答
举报
