位置: 编程技术 - 正文

javascript的 {} 语句块详解(javascript的语法在哪一项中规定)

编辑:rootadmin

推荐整理分享javascript的 {} 语句块详解(javascript的语法在哪一项中规定),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:JavaScript的语言前身,JavaScript的语法规范,JavaScript的语句sweep,JavaScript的语法规范,JavaScript的语言前身,JavaScript的语音特点,javascript的语法特点中,javascript的语法特点中,内容如对您有帮助,希望把文章链接给更多的朋友!

今日学习解析json字符串,用到了一个eval()方法,解析字符串的时候为什么需要加上括号呢?摸不着头脑。原来javascript中{}语句块具有二义性,不加括号会出错,理解这种二义性对我们理解javascript代码有极大帮助。

一、{}语句块的两个含义

表示语句块

a. 在javascript中可以使用{}来括起代码,在编辑器中方便管理代码。因为javascript并没有块级作用域,所以这种写法是无害的。

b. 在javascript中 ,条件判断语句,循环语句,函数都需要{}语句块来整合代码

对象字面量

//此时[code]作为表达式,可以赋值给一个变量//其实对象字面量就是可以生成对象值的表达式

二、那如果对象字面量不作为一个赋值表达式,会发生什么情况呢?

javascript的 {} 语句块详解(javascript的语法在哪一项中规定)

example:

由上面可以看出对象字面量只能够作为表达式赋值,第一种写法没有错,只是javascript将它作为一个label语句解析了。

analysis:

三、但是问题又来了……

//这样为什么会报错?这不是对象字面量的写法吗?因为javascript中{}的二义性,{}不仅仅被认为是对象字面量而且还会被认为是代码块。

一个代码块,两条label语句,如果没有逗号,是完全没有问题的,所以关键在于逗号,两条语句的分隔应该使用分号,所以javascript会判定这是语法错误

四、正确的写法

()会把语句转换成表达式,称为语句表达式,对象字面量不是表达式吗?为什么还需要()来转换?

加上括号以后,就可以消除这种二义性,因为括号里的代码都会被转换为表达式求值并且返回,因此语句块也就变成了对象字面量,也可以得出,对象字面量必须作为表达式而存在

Javascript技术栈中的四种依赖注入小结 作为面向对象编程中实现控制反转(InversionofControl,下文称IoC)最常见的技术手段之一,依赖注入(DependencyInjection,下文称DI)可谓在OOP编程中大行其

javascript正则表达式总结 工具Regexpal是一个在线Javascript正则表达式处理器,地址是:

javascript中FOREACH数组方法使用示例 Array.prototype.forEach()方法让数组的每一项都执行一次给定的函数。—MDN假设有这么一个场景,你拿到了这么一个数组[{symbol:"XFX",price:.,volume:},{symbol

标签: javascript的语法在哪一项中规定

本文链接地址:https://www.jiuchutong.com/biancheng/369979.html 转载请保留说明!

上一篇:javascript中eval解析JSON字符串(javascript中的eval函数)

下一篇:Javascript技术栈中的四种依赖注入小结(javaweb技术栈是什么)

  • 年终双薪究竟该怎么算
  • 配件销售过程中有什么注意事项
  • 公司注销后账本怎么处理
  • 防伪税控系统专用设备
  • 清卡抄税报税顺序
  • 现金流量表现金指的什么
  • 开发票要多交费正常吗?
  • 有红字发票如何入账
  • 股东个人为公司付的钱
  • 可供出售金融资产和交易性金融资产
  • 房地产开发企业资质等级有几个
  • 销售人员出差补助计入什么科目
  • 期间费用如何设置项目核算
  • 监理费可以由施工方出吗
  • 收到的财政补贴如何做账
  • 利润表中列报项目
  • 每个行业都能赚钱吗
  • 坏账准备的计提是什么意思
  • 设计部工资计入哪个科目
  • 房产免租期间缴纳房产税吗
  • mac怎么开机
  • 企业为员工缴纳社保可以抵税吗
  • 腾讯手游助手遇到未知错误
  • 收支两条线是指
  • 会计上金融资产包括哪些
  • 备用金的会计分类
  • windows7为什么不能用了
  • 发放工资的时候,如何在excel里快速查询未发放成功的
  • iphone6s显示4g却无法上网
  • php字符串函数大全
  • 分配结转制造费用时借方科目
  • 政府补助的会计处理分录
  • vue url 参数
  • 固定资产清理如何计算增值税
  • thinkphp dump
  • 公司内部往来双向挂账
  • 固定资产是指什么
  • 前端笔记软件
  • 编程前十名
  • 怎么检测pvc中含量
  • 预付采购材料款60000元
  • 税控盘总是连接服务器失败
  • 合伙企业个人所得税怎么算
  • 小规模纳税人每月不超过10万
  • 一笔购入多项固定资产
  • python数组合并并排序
  • pygame编程
  • 税控盘技术服务费抵扣期限
  • 销售收入未及时入账
  • 息税前利润变动率怎么算
  • 劳务派遣人员的档案会保存在用人单位吗
  • 小规模减免的附加税怎么做账
  • 支付宝可以对公账户转账吗怎么转
  • 企业被收购的账务处理
  • mysql5.7.31安装配置教程
  • 数据库备份sqlserver
  • redhat安装yum
  • win8怎么让我的电脑显示在桌面上
  • macbookair怎么开启
  • windows server 2008 r2激活密钥
  • mac虚拟机安装win10教程
  • OS X 10.10 Yosemite的新特性与iOS联系更紧密
  • centos6开机启动
  • 虚拟机怎样用
  • linux ping命令的用法
  • win7网上邻居怎么共享文件数据
  • win8.0升级win8.1
  • linux系统怎么弄
  • Access to the path "LibraryUnityAssembliesUnityEngine.xml" is denied.
  • Android shape画圆
  • 运行node.js的应用程序服务器
  • unity工程文件怎么弄
  • java对象怎么比较
  • jquery获取单选按钮的值
  • 山西省地方税务局 先进 文明 李家庄税务所
  • 关于明确干部挂职工作期间有关待遇的
  • 天津国税局电子税务局
  • 河南省税务总局网站官网
  • 上善若水 宁静致远,适合小学标语吗?
  • 土增税税负率一般多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设