[英]how do i add all js array objects to one string?
我想使用 JSON 并将所有ID添加到一个字符串中,但我遇到了一些麻烦。 我对使用 JSON 对象相当陌生,所以如果您有任何想法,请解释它是如何工作的。
我想转换这个:
let users = [
{"id":"24317318904217xxxx","name":"person 1"},
{"id":"69336408842371xxxx","name":"person 2"}
]
var str = `ID\'s `
对于这样的事情:
`ID's: <@24317318904217xxxx>, <@69336408842371xxxx>`
提前致谢!
您可以使用 javascript 中的map()方法来创建此结构。
基本上,您使用模板字符串创建一个字符串,然后将其推送到您的数组变量中并对其进行修改。
1 - 使用您的数据创建一个数组
str = users.map(user => `@${user.id}`)
2 - 将“ID”文本添加到变量中并使用join()方法将数据转换为字符串
str = `ID\s ${str.join(', ')}`
有一个美好而富有成效的一天!
完整代码:
let users = [{ "id": "24317318904217xxxx", "name": "person 1" }, { "id": "69336408842371xxxx", "name": "person 2" } ] str = users.map(user => `<@${user.id}>`) str = `ID\s ${str.join(', ')}` console.log(str)
当您是 JS 新手时,您可以开始使用简单的 for 循环遍历 users 数组,如下所示:
let users = [
{"id":"24317318904217xxxx","name":"person 1"},
{"id":"69336408842371xxxx","name":"person 2"}
]
let str = "ID's: ";
for (let i = 0; i < users.length; i++) {
str += `<@${users[i].id}>`;
if (i < users.length - 1)
str += ", ";
}
要访问数组中的第 i 个 object(0 索引),请使用users[i]
;
要访问对象的“id”属性,只需使用object.id
。 与名称和所有其他属性相同。
阅读更多: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object
字符串连接对您来说可能看起来有点奇怪,它是一个字符串模板,请参阅: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String
另一个答案使用map
并join
,您可以在阵列 mdn 文章中阅读更多信息。 我强烈建议您阅读它,因为 Javascript 代码经常使用这些功能,但对于只编写过迭代代码的人来说可能需要习惯。
如果您有任何其他问题,请随时在评论中提问!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.