为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

智慧大石 2021-10-05 17:07:19
var data = "user_Name="+user_Name.val();和var data = {"user_Name":user_Name.val()};这两种写法为何都对?第二种是JSON写法,那第一种是什么写法?为什么这样写也是对的?求大神指点一下,感激不尽!!!!!!!!
查看完整描述

2 回答

?
开心每一天1111

TA贡献1836条经验 获得超13个赞

这两个不一样呀。

首先,第一个是字符串,第二个是对象。

其次,正确的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对象的关键。


查看完整回答
反对 回复 2021-10-10
?
慕的地10843

TA贡献1785条经验 获得超8个赞

前者是url重写传值方法,name=value&name=value,该方法是表单或超链接传递参数的方式
后者是json对象传值

查看完整回答
反对 回复 2021-10-10
  • 2 回答
  • 0 关注
  • 447 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信