Javascript TypeError:变量是未定义的,仅用于访问索引
Javascript TypeError: variable is undefined only for accessing index
如果我写以下代码:
f();
function f(v) {
var a = v;
}
浏览器在控制台中没有给出警告/错误。但是如果我写
f();
function f(v) {
var a = v['hellp'];
}
则抛出:TypeError: v is undefined。尽管在这两种情况下都没有定义变量"v"。有人能解释一下吗?
在第一个示例中,您将undefined
分配给a
。
在第二个示例中,您试图读取undefined
的hellp
属性(并将该属性的值赋给a
)。undefined
不能有属性,所以当你试图访问它的属性时,你会得到一个错误。
我认为这是undefined
在这两种情况下,你可以分配未定义的东西,但如果你试图访问一个字段或调用一个方法的错误被抛出
将a设置为未定义没有问题(v是未定义的!),但是访问未定义的变量有问题!!想想看!在第一种情况下,您只设置一个,但在第二种情况下,您试图读取未定义变量的属性(即help) !
相关文章:
- 我如何设置HTTP头“;访问控制允许起源”;用于来自thttpd web服务器的HTTP响应
- 可访问的更改菜单项,用于使用不引人注目的JS进行导航,而不是jQuery,
- 从函数属性访问对象属性;不适用于Firefox
- 如何将访问令牌用于Facebook Opengraph javascript SDK api请求
- 用于JavaScript的ArcGIS API,NS_ERROR_DOM_BAD_URI:拒绝访问受限URI
- 根据用于访问您的域的 URL 更改页面内容
- 用于访问父范围的控制器层次结构异常:AngularJS
- 用于访问 Steam 军团要塞 2 帐户信息的脚本
- 用于访问或克隆 github 存储库的 JS 库
- FlowJS示例,用于循环访问Angular控制器中的文件
- Setter 函数用于动态访问数组中的字段,该数组是一个属性
- Javascript函数,用于记住用户在其先前的访问权限中从一组下拉菜单选项中选择的内容
- Facebook Graph API - 用于离线访问(弃用)的访问令牌
- 是否有用于访问Alchemy Data News API的javascript/Node.js库
- HTTP动词POST用于访问路径'& # 39;在IIS 7中不允许
- 在JavaScript中更改函数上下文(用于访问局部变量)
- Javascript TypeError:变量是未定义的,仅用于访问索引
- Require.js用于访问函数
- 检测链接是否用于访问页面
- Javascript的性能.vs varname.用于访问属性