[英]How do I set multiple values of a JSON object?
所以我一直在研究这个项目,但我被卡住了,因为我不知道应该如何设置这个新 JSON 对象的其他值。 所以基本上在前端我有这个: HTML page view 。 'cat4' ID 是我尝试创建的新对象,它说明了我正在尝试修复的错误。 问题是我在设置新创建的对象(或多个值)的 LIMIT 值时遇到问题。 这是创建对象的代码:
function sendCat()
{
window.clearTimeout(timeoutID);
var newCat = document.getElementById("newCat").value
var lim = document.getElementById("limit").value
var data;
data = "cat=" + newCat + ", limit=" + lim;
var jData = JSON.stringify(data);
makeRec("POST", "/cats", 201, poller, data);
document.getElementById("newCat").value = "Name";
document.getElementById("limit").value = "0";
}
特别是我一直在玩线data = "cat=" + newCat + ", limit=" + lim;
但到目前为止,我尝试的任何组合都没有奏效。 有没有办法可以修改这条线,以便在发送数据时它会起作用? 我发现这行代码有效但仅用于设置对象的一部分很奇怪。
您所指的“JSON 对象”实际上只是一个 javascript 对象,您可以使用对象文字语法创建一个对象。 具有多个属性的对象字面量如下所示:
var data = {
cat: newCat,
limit: lim
};
makeRec("POST", "/cats", 201, poller, JSON.stringify(data));
假设makeRec
的第五个参数应该是作为字符串化 JSON 的 POST 请求正文,因为您的代码似乎暗示
JSON.stringify() 方法将 JavaScript 对象或值转换为 JSON 字符串,如果指定了替换器函数,则可以选择替换值,或者如果指定了替换器数组,则可以选择仅包含指定的属性。
我认为这就是你想要的:
const newCat = 'Meow'; const newLimit = 5; const data = { cat: newCat, limit: newLimit } console.log(JSON.stringify(data));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.