Javascript 使用json语法左侧的变量
我正在使用javascript/ajax创建github gist 我想提供我自己的文件名。下面是json格式的数据Javascript 使用json语法左侧的变量,javascript,json,github,github-api,gist,Javascript,Json,Github,Github Api,Gist,我正在使用javascript/ajax创建github gist 我想提供我自己的文件名。下面是json格式的数据 var data = { "description": gist_description, "public": true, "files": { "file.txt" : { "content": gist_content } } }; 我写了var gist_filename=“main.txt” 我用变量名替换了“file.t
var data = {
"description": gist_description,
"public": true,
"files": {
"file.txt" : {
"content": gist_content
}
}
};
我写了var gist_filename=“main.txt”
我用变量名替换了“file.txt”,即gist_文件名:{“content”:……};
但实际上,gist是用名称gist\u filename
创建的,而不是变量中的实际名称,即main.txt
虽然赋值在右边,例如,“content”:gist\u content给了我存储在变量gist\u content中的正确内容
任何可能的建议。我不太懂json。
谢谢 请参见,您需要首先创建对象,然后使用my_obj[x]=y
语法为一个键分配一个变量
你的处境
var gist_description = "desc...",
gist_content = "content...";
var data = {
"description": gist_description,
"public": true,
"files": {
}
}
var filename = "myfile.txt";
data["files"][filename] = {
"content": gist_content
}
你不能那样做。它不会是JSON。
var data={..
位是JavaScript(JSON是JavaScript对象文字语法的一个子集)。无论如何,我想说的是:这个问题在编写时没有什么意义。更多的上下文可能会有帮助。可能是重复的而不是“file.txt”。我只想让我的变量在那里工作。我尝试了var gname={};gname[gist_filename]=gist_filename',然后放入
gname:{“contents”:gist_content}`。它不起作用,随时:)-请选择它作为正确答案好吗?