javascript - JSON.stringify() 与 array.join (',' )

标签 javascript json string asp.net-web-api serialization

Angular 6 中,我使用 myString.join(',') 将一组 ID 加入到一长串逗号分隔的 ID 中。

当我将其发送到 .NET Web API 时,我注意到只发送了一个值,即第一个 ID。然后,我通过将 myString.join(',') 更改为 JSON.stringify(myString.join(',')) 在前端修复了此问题。现在,在 API 上,所有 ID 均已成功发送。

我想知道这是为什么。我知道数据需要通过 JSON 发送,但是 JSON 字符串和由 .join(', ')?我希望常规的 .join() 能够工作,因为它是一个字符串。

最佳答案

array.prototype.joinJSON.stringify 都返回简单字符串。因此,您应该能够通过控制台记录两者并找到输入的区别。

最有可能的是它的引号。 JSON.stringify(string)string 包裹在引号 " 中并转义现有引号。

let s = '""yo i already have many quotes"""';
let j = JSON.stringify(s);
console.log(s);
console.log(j);

let ids = [123, 516];
let idsJoin = ids.join(',');
let idsJson = JSON.stringify(idsJoin);

console.log(ids);
console.log(idsJoin);
console.log(idsJson);

关于javascript - JSON.stringify() 与 array.join (',' ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58825057/

相关文章:

javascript - 如何在登录后重定向到页面,同时使用 Express 将 token 作为处理程序发送到中间件

javascript - 使用 Tomcat 引用 Javascript 库

javascript - 单击一个 div 在 highcharts 中突出显示一片饼图

c++ - 自动替换stringstream中的字符

javascript - 为什么这个函数不返回任何值?

javascript - 如果在另一个数组中找到值,则不会始终从数组中删除该值

json - 重新格式化 JSON 数据以适应树状存储

Python 和 Json : Multiline input data into Json

c - 难以将子字符串添加到c中的字符串

swift - 字节字符串作为 Swift 4 中的数据