对定义第一流命名空间的方法的疑问

对定义*命名空间的方法的疑问
看很多人定义命名空间时都是用 var ns = ns || {}; 
这句话的意思是 判断 ns是否为真,否则 就 实例化对象 。 这是为什么这么解析啊,不懂,求高人指教。
命名空间

------解决方案--------------------
就是这么个意思

var ns;
if(ns){
 ns = ns;
}else{
 ns = {};
}
var ns = ns 
------解决方案--------------------
 {};