在javascript中定义unassign变量的不同方法

时间:2016-07-24 10:18:58

标签: javascript variables

我知道当我们想要在Javascript中定义取消分配变量时我们可以这样做:

var p ={};

和另一个:

if

我想知道这两种方式之间的差异,如果我以第二种方式定义变量,它不是空的!如果我们想要在var p ={}; if(p=='what i shout put there') {} 条件下使用它,那么变量中的值是什么,例如:

$stmt = $connection->prepare($queryA);

2 个答案:

答案 0 :(得分:2)

var p正在创建一个未分配的变量。因此console.log(p)会记录undefined

var p ={};是一种使用literal notation创建对象的方法。

对象p包含constructorhasOwnPropertytoLocaleString等方法

  

如果(p =='我大喊那里'){}

如果需要检查p是否为对象,则下面的代码段非常有用

if(Object.prototype.toString.call( a ) === '[object Object]'){
 // Do rest of code
}

对象可以具有属性。像

var p={};
p.a ="someValue";

在这种情况下,您可以通过

进行检查
if(p.a  === 'someValue'){
     // Do rest of code
    }

答案 1 :(得分:0)

var p = {};

它未被分配,它实际上被分配给空对象

如果你在下面这样做,它将是trut

if(p) {} // truthy