ReferenceError:---- 指在RHS查询中所有嵌套的作用于中遍寻不到所需的变量,引擎就会抛出ReferenceError异常。
ReferenceError同作用域判别失败相关,而TypeError这代表作用域判别成功了,但是对结果的操作是非法或不合理的。
eg:
function foo(a) { console.log(a + b); b = a; } var c = foo(2);
比如以上示例,其中在console.log(a+b)对b进行RHS查询的时候,未找到b,即RHS引用不成功导致ReferenceError的异常:具体异常时b未定义
总结:作用域、LHS和RHS
不成功过的RHS引用会导致抛出ReferenceError异常。
不成功的LHS引用会导致自动隐私地创建一个全局变量(非严格模式下),该变量使用LHS引用的目标作为标识符,或者抛出ReferenceError异常(严格模式下)。
标签:TypeError,区别,作用域,RHS,LHS,异常,ReferenceError From: https://www.cnblogs.com/inceng/p/16969792.html