[英]Array values to a string in loop
const string = array.map(({PC}) => `[${PC}]`).join('/')
您可以将每个字符串映射到括在括号中的字符串,然后通过斜杠将其连接起来。
您可以使用map()和join()来获取该结构。 - 这是与Puwka's =相同的解决方案,但没有模板文字。
var data = [ {am: 1, ct: "", pc: "1000000025"}, {am: 2, ct: "", pc: "1000000013"} ]; let newArr = data.map(item => "[" + item.pc +"]"); console.log(newArr.join("/")); // gives [1000000025]/[1000000013]
你总是可以使用classic for in循环
let arr = [{PC:'1000'},{PC:'10000'}]
let arrOut = [];
for(let i = 0; i < arr.length; i++) {
arrOut.push('[' + arr[i].PC + ']');
}
现在arrOut相等[“[1000]”,“[10000]”]我们需要的是将它转换为字符串并在项目之间添加'/'。
let str = arrOut.join('/');
console.log(str) // "[1000]/[10000]"
首先,如果你想分割结果,那么最好把它改成数字,然后再进行除法。 例
Number.parseInt("100000025")/Number.parseInt("100000013")
如果你想显示它,那么最好使用字符串插值用它后面勾选[${[0].PC}]/[${[1].PC}]
希望这就是你要找的东西
因此,您需要一个格式为:xxxx / yyyyy的字符串来自复杂的对象数组。
const basedata = [...];
const result = basedata.map( item => `[${item.PC}]` ).join('/')
所以我现在解释一下。 map函数将返回一个新数组,每个项目有1个条目。 我声明我想要PC,但我添加了一些使用滴答声来将它注入某些括号之间。 此时它看起来像: ["[1000000025]","[100000013]"]
然后join将在斜线上加入数组,因此它将变成一个数组。
"[100000025]/[100000013]"
现在,这将根据您的基础数据中的项目进行扩展。 因此,如果您的basedata数组中有3个项目,它将返回:
"[10000000025]/[100000013]/[10000888]"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.