javascript - 在 JavaScript 中定义未分配变量的不同方法

标签 javascript variables

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

var p;

另一个:

var p ={};

我想知道这两种方式之间的区别,如果我用第二种方式定义一个变量,它不为空!如果我们想在 if 中使用变量的值,那么它的值是多少?条件,例如:

var p ={};
if(p=='what i shout put there')
  {}

最佳答案

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

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

对象 p 具有诸如 constructorhasOwnPropertytoLocaleString 等方法

if(p=='what i shout put there'){}

如果需要检查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
    }

关于javascript - 在 JavaScript 中定义未分配变量的不同方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38550950/

相关文章:

python - 在 Python 函数中返回变量不能正常工作

python - tkinter 中的变量替换

objective-c - 如何在 Objective-C 中将本地 "variables"声明为 final?

javascript - 类型 'number' 的参数不可分配给类型 'string' 的参数

javascript - 用于 XML 编辑的 HTML 组件

javascript - 技术原因我们无法通过 Map.prototype.keys() 使用 forEach() 进行迭代

mysql - 将查询结果设置为 MySQL 中的变量

javascript - 允许下载通过 JavaScript 和 Google Earth API 创建的 KML 文件

JavaScript array.filter() 和迭代器

string - Powershell 将变量传递给函数