undefine 是可以被赋值的。
但是void 操作符 通过 计算 void 后面的变量名后还是会返回一个undefined ,这样就保证了你的undefined即使被定义了,采用void 表达式,还是会得到正确的undefined
方法二
angular中采用的undefined,在一个方法中定义一个参数,但是在调用的时候不传入这个参数,然后在方法体内调用这个参数,那么得到的值就是正确的undefined。