由于教程声称使用Javascript对象可以转换为JSON,但当我尝试转换时:
var myObj = { name:"John", age:31, city:"New York" };使用以下命令:
var myJSON = JSON.stringify(myObj);
window.location = "demo_json.php?x=" + myJSON;它不起作用。
但如果我这样做:
var myObj = { "name":"John", "age":31, "city":"New York" };
var myJSON = JSON.stringify(myObj);
window.location = "demo_json.php?x=" + myJSON;它起作用了。
为什么?如果它声称要将JS对象转换为JSON,那么为什么不呢?为什么我必须在字符串两边加引号?如果我加引号,那么它就不再是JS对象了。
发布于 2017-07-01 20:15:38
试试这个:
var myObj = { name:"John", age:31, city:"New York" };
var encodedParams = $.param(myObj);
console.log(encodedParams);我希望这对你有帮助!
发布于 2017-07-01 20:26:03
看看这个JS Fiddle。它可以很好地转换它。stringify创建JSON对象的字符串表示形式。在浏览器的控制台输出中是否出现JavaScript错误?
var myObj = { name:"John", age:31, city:"New York" };
var myJSON = JSON.stringify(myObj);
var test = "demo_json.php?x=" + myJSON;
document.querySelector("#test").innerText = test;<div id='test'></div>
发布于 2017-07-01 20:13:32
在这里起作用了。
var myObj = { name:"John", age:31, city:"New York" };
var myJSON = JSON.stringify(myObj);
console.log(myJSON);
alert(myJSON);
https://stackoverflow.com/questions/44860767
复制相似问题