空和null的区别

1.NULL:代表声明了一个空对象,不是一个字符串,可以赋给任何对象。 空字符:代表声明了一个对象实例,这个对象实例的值是一个长度为0的空字符串。
2.string a=null; 只是定义了一个句柄,即你有了个引用,但是这个引用未指向任何内存空间。 string a=””; 这个引用已经指向了一块是空字符串的内存空间,是一个实际的东西了,所以可以对它操作。
在MVC中视图回填数据时,向控制器请求数据时,有时会出现空数据这种情况,返回的是一个null或者一个空的字符串。在这个时候在判断它不等与null或者空时,就会有可能存在不不执行回调函数的情况。
在这里插入图片描述
这是一个人为的异常,但视图在浏览器请求不会有报错的提示,其实该请求是执行完的,但在你判断的时候它并没有执行你回调函数里的判断返回后的if或者else里面的代码。在这里插入图片描述
所以当用json返回一个null时,它不是一个东西,空的什么都没有,所以在回调函数里的判断没有拿到东西去判断,所以就跳过执行。
那么当return Json("", JsonRequestBehavior.AllowGet);就可以判断并执行里的代码。

猜你喜欢

转载自blog.csdn.net/weixin_44560799/article/details/108470388