以下这两种关于var写法都对?这是为什么呢?

var data = "user_Name="+user_Name.val();和var data = {"user_Name":user_Name.val()};这两种写法为何都对?第二种是JSON写法,那第一种是什么写法?为什么这样写也是对的?求大神指点一下,感激不尽!!!!!!!!

智慧大石
浏览 448回答 2
2回答

开心每一天1111

这两个不一样呀。首先,第一个是字符串,第二个是对象。其次,正确的JSON格式要包含在中括号或大括号中,第一个写法不是JSON格式。正确写法应该是:1var str = "{user_Name:"+user_Name.val()+"}";JSON只是一种数据格式,你可以理解成一串按特定规则组合的字符串,这个字符串可以方便转化为js对象。最后,按两者是否等效来讲,第一个和第二个不是等效的。因为你不能用前者完全替换后者。等效的写法是:12var str = "var data = {user_Name:"+user_Name.val()+"}";eval(str);eval是json转换为js对象的关键。

慕的地10843

前者是url重写传值方法,name=value&name=value,该方法是表单或超链接传递参数的方式后者是json对象传值
打开App,查看更多内容
随时随地看视频慕课网APP