var data = "user_Name="+user_Name.val();和var data = {"user_Name":user_Name.val()};两种为何都对?
vardata="user_Name="+user_Name.val();和vardata={"user_Name":user_Name.val()};这两种写法为何都对...
var data = "user_Name="+user_Name.val();和var data = {"user_Name":user_Name.val()};这两种写法为何都对?第二种是JSON写法,那第一种是什么写法?为什么这样写也是对的?求大神指点一下,感激不尽!!!!!!!!
展开
2个回答
展开全部
这两个不一样呀。
首先,第一个是字符串,第二个是对象。
其次,正确的JSON格式要包含在中括号或大括号中,第一个写法不是JSON格式。正确写法应该是:
var str = "{user_Name:"+user_Name.val()+"}";
JSON只是一种数据格式,你可以理解成一串按特定规则组合的字符串,这个字符串可以方便转化为js对象。
最后,按两者是否等效来讲,第一个和第二个不是等效的。因为你不能用前者完全替换后者。
等效的写法是:
var str = "var data = {user_Name:"+user_Name.val()+"}";
eval(str);
eval是json转换为js对象的关键。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询