为什么不展开为空字符串,展开后就undefind?
赋值图如下
你tempRoleNames 未定义。所以是undefined
定义了,只是没有贴出来,是个空字符串,仔细看图,id也是“”,展开后也是“”。
@奶中有毒: 那你tempRoleNames赋值的时候有问题,你检查下
这是console函数自带的转换逻辑。。。 一般来说不会照成什么问题。。。
数据是要传到后台的,sql判断为空字符做处理的
@奶中有毒: 额 大哥。。 你。。。 你要明白我的意思 我是说 console 确实是会把undefined转化成"" 空字符串 但是 实际上 他没解析还是undefined
你只需要稍微改一下 添加一个如果不存在给予一个默认值的 逻辑就好了比如
param.roleName = tempRoleName || ""(这里是为空时,你想要的默认值);
应该可以解决你的问题了吧。。
不过要注意的是 如果tempRoleName 为0的时候 还是会被系统默认为false 填入默认值的
@blurs: 哦,我给他赋值为“”,也是出现这个现象。
@奶中有毒: 你的期望到底是什么。。。 没理解你的需求
提供的信息太少,不好判断,最好用debug模式测试一下,看是否值传漏了或者,没返回值。
数据已被改了
怎么说
@奶中有毒:
断点调试一下吧,是否tempRoleNames已经被修改了,当时的结果是否正确