LHS查询:赋值操作左侧的查询,LHS查询试图找到变量的容器本身,,从而对其赋值。

RHS查询:赋值操作右侧的查询,可以理解为“取到某某的值”

举例:

function foo(a) {
console.log(a);
} foo(2);

RHS查询有:

  1. foo(..), 查询foo函数
  2. 函数内Console对象的查询
  3. 对a进行RHS查询

LHS查询:

  1. 把2赋值给参数a时,对a进行LHS查询;
  • 区别

如果RHS查询在所有嵌套的作用域中找不到所需的变量,引擎就会抛出ReferenceError异常;

相比之下,非严格模式下,当执行LHS查询时,如果在顶层作用域也无法找到目标变量,全局作用域会创建一个具有该名称的变量,并将其返回给引擎;严格模式下,LHS查询,找不到目标变量时也会抛出ReferenceError异常。

如果RHS查询找到了一个变量,但是对这个变量的值进行不合理的操作(如试着引用null类型的属性),引擎会抛出TypeError异常。

  • 作用域

作用域是一套规则,用来管理引擎如何在当前作用

域以及嵌套的子作用域中根据标识符名称进行变量查找。如果查找的目的是对

变量进行赋值,那么就会使用 LHS 查询;如果目的是获取变量的值,就会使用 RHS 查询。

作用域中LHS查询和RHS查询的更多相关文章

  1. 你不知道的JavaScript(1)LHS查询和RHS查询

    打算把<你不知道的JavaScript>中的知识点整理下,写点自己的心得,同时也敦促自己看书. 先做个整体的介绍,最后会再给个综合的例子. RHS 查询与简单地查找某个变量的值别无二致,而 ...

  2. JavaScript之找LHS查询和RHS查询

    LHS和RHS,当变量出现在赋值操作的左侧时进行LHS 查询,出现在右侧时进行RHS 查询. LHS 查询是试图找到变量的容器本身,从而可以对其赋值. RHS 理解成retrieve his sour ...

  3. JavaScript引擎LHS查找和RHS查找

    要想真正理解Javascript脚本中每一句代码的执行过程,需要弄清楚几个基本概念:1.引擎,从头到尾负责整个 JavaScript 程序的编译及执行过程.2.编译器,引擎的好朋友之一,负责语法分析及 ...

  4. SQL SERVER 2008:内部查询处理器错误: 查询处理器在执行过程中遇到意外错误

       今天一个同事突然告诉我,以前跑得很正常的一个SQL语句,执行时突然报如下错误:         消息1222,级别16,状态18,第1 行         已超过了锁请求超时时段.        ...

  5. c#程序中使用"like“查询access数据库查询为空的问题

    今天,在开发的过程中发现了一个特别奇怪的问题:access中like查询时候,在Access数据库中执行,发现可以查询出结果,这是在数据库上执行,select * from KPProj where ...

  6. 在查询时将查询条件放入Session中,导出时直接根据qpniRGaFiler取查询条件即可

    在查询时将查询条件放入Session中,导出时直接根据qpniRGaFiler取查询条件即可

  7. oracle中的连接查询与合并查询总结

    连接查询: 连接查询是指基于多张表或视图的查询.使用连接查询时,应指定有效的查询条件,不然可能会导致生成笛卡尔积.如现有部门表dept,员工表emp,以下查询因查询条件无效,而产生笛卡尔积:   (各 ...

  8. sqlserver中的 数据转换 与 子查询

    数据类型转换 --cast转换 select CAST(1.23 as int) select CAST(1.2345 as decimal(18,2)) select CAST(123 as var ...

  9. EF中使用语句 或存储过程 查询(转)

    EF中使用语句 或存储过程 查询 1.无参数查询 var model = db.Database.SqlQuery("select* from UserInfoes ").ToLi ...

随机推荐

  1. share pool 管理机制

    Library cache是Shared pool的一部分,它几乎是Oracle内存结构中最复杂的一部分,主要存放shared curosr(SQL)和PLSQL对象(function,procedu ...

  2. MIT Molecular Biology 笔记1 DNA的复制,染色体组装

    视频  https://www.bilibili.com/video/av7973580?from=search&seid=16993146754254492690 教材 Molecular ...

  3. web百度地图跨域问题

    //根据经纬度获取地理位置信息function latOrLng(sLat, sLng) { var resUrl = 'http://api.map.baidu.com/geocoder/v2/?a ...

  4. git windows下载安装 (git命令)

    Set up git At the heart of GitHub is an open source version control system (VCS) called Git. Git is ...

  5. noip第2课作业

    1.    大象喝水 [问题描述] 一只大象口渴了,要喝20升水才能解渴,但现在只有一个深h厘米,底面半径为r厘米的小圆桶(h和r都是整数).问大象至少要喝多少桶水才会解渴. 输入:输入有一行,包行两 ...

  6. 11.DataGrid分页

    前台页面: 后台程序:

  7. ASP.NET MVC Bundles 合并压缩(js css)

    Chrome浏览器有并发的Http请求限制,Bundles可以将多个JS文件合并成一个文件并进行压缩,最终得到一个单文件的压缩包. 第一步:BundleConfig public class Bund ...

  8. AlexNet详解

    在imagenet上的图像分类challenge上Alex提出的alexnet网络结构模型赢得了2012届的冠军.要研究CNN类型DL网络模型在图像分类上的应用,就逃不开研究alexnet,这是CNN ...

  9. WPF如何设置Image.Source为资源图片

    img.Source = new BitmapImage(new Uri(path,UriKind.RelativeOrAbsolute));

  10. play framework - 初识

    背景 研发代码框架是play-framework框架,想看代码的话,需要学习下play框架.IDE工具的话之前一直用的idea,所以本文涉及的idea play的配置 和 一些play的简单知识 认识 ...