JavaScript中的连续赋值问题实例分析


Posted in Javascript onJuly 12, 2019

本文实例讲述了JavaScript中的连续赋值问题。分享给大家供大家参考,具体如下:

JavaScript中的连续赋值:

<script>
var a = {n: 1}
var b = a;
a.x = a = {n: 2}
console.log(a.x);//undefined
console.log(b.x)//Object {n: 2}
</script>

Javascript中赋值运算符“=”的优先级是除了“,”以外最低的,并且是从右向左结合的。

Javascript中运算的顺序是从左向右的。

a.x = a = {n: 2}可以看做a.x =(a = {n: 2}) ,先运算a.x,在a中添加x属性,结果为null,在计算表达式(a = {n: 2}),最后进行赋值运算。

修改程序:

<script>
var a = {n: 1}
var b = a;
a = a.x = {n: 2}
console.log(a.x);//undefined
console.log(b.x)//Object {n: 2}
</script>
<script>
var a = {x:{xx:1},y:2,z:3};
var b = a.x; //{xx:1}
var c = a;
a.w = a.x.xx = a.y = a = {x:10,y:20};
console.log(a);
console.log(b);
console.log(c);
</script>

运行结果:

a : {x: 10, y: 20}
b : {xx : {x: 10, y: 20}}
c :?{x:{xx:{x:10,y:20}},y:{x:10,y:20},z:3,w:{x:10,y:20}}

<script>
console.log(c.x.xx.x);//10
console.log(c.y.x);//10
console.log(c.w.x);//10
</script>

上述代码感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试运行结果。

更多关于JavaScript相关内容还可查看本站专题:《javascript面向对象入门教程》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
JavaScript 异步调用框架 (Part 4 - 链式调用)
Aug 04 Javascript
jquery 学习之一 对象访问
Nov 23 Javascript
jquery实现背景墙聚光灯效果示例分享
Mar 02 Javascript
JavaScript遍历table表格中的某行某列并打印其值
Jul 08 Javascript
node.js 动态执行脚本
Jun 02 Javascript
浅析script标签中的defer与async属性
Nov 30 Javascript
echarts学习笔记之箱线图的分析与绘制详解
Nov 22 Javascript
利用vue开发一个所谓的数独方法实例
Dec 21 Javascript
Node使用Sequlize连接Mysql报错:Access denied for user ‘xxx’@‘localhost’
Jan 03 Javascript
vue实现双向绑定和依赖收集遇到的坑
Nov 29 Javascript
jQuery层叠选择器用法实例分析
Jun 28 jQuery
vuejs实现下拉框菜单选择
Oct 23 Javascript
微信小程序开发常见问题及解决方案
Jul 11 #Javascript
使用vue for时为什么要key【推荐】
Jul 11 #Javascript
利用Angular7开发一个Radio组件的全过程
Jul 11 #Javascript
vue发送websocket请求和http post请求的实例代码
Jul 11 #Javascript
微信小程序之几种常见的弹框提示信息实现详解
Jul 11 #Javascript
JavaScript表格隔行变色和Tab标签页特效示例【附jQuery版】
Jul 11 #jQuery
vue项目中实现缓存的最佳方案详解
Jul 11 #Javascript
You might like
Symfony2获取web目录绝对路径、相对路径、网址的方法
2016/11/14 PHP
用js生产批量批处理执行命令
2008/07/28 Javascript
JavaScript高级程序设计 读书笔记之十一 内置对象Global
2012/03/07 Javascript
javascript 构造函数方式定义对象
2015/01/02 Javascript
javascript中call apply 的应用场景
2015/04/16 Javascript
jQuery1.9.1源码分析系列(十六)ajax之ajax框架
2015/12/04 Javascript
jQuery Timelinr实现垂直水平时间轴插件(附源码下载)
2016/02/16 Javascript
javascript 将共享属性迁移到原型中去的实现方法
2016/08/31 Javascript
jquery.cookie.js的介绍与使用方法
2017/02/09 Javascript
基于BootStrap multiselect.js实现的下拉框联动效果
2017/07/28 Javascript
小程序实现左滑删除功能
2018/10/30 Javascript
JavaScript对象访问器Getter及Setter原理解析
2020/12/08 Javascript
关于pip的安装,更新,卸载模块以及使用方法(详解)
2017/05/19 Python
Python开发微信公众平台的方法详解【基于weixin-knife】
2017/07/08 Python
微信跳一跳辅助python代码实现
2018/01/05 Python
解决新django中的path不能使用正则表达式的问题
2018/12/18 Python
Python 实现中值滤波、均值滤波的方法
2019/01/09 Python
python pandas时序处理相关功能详解
2019/07/03 Python
Pytorch 抽取vgg各层并进行定制化处理的方法
2019/08/20 Python
python读取dicom图像示例(SimpleITK和dicom包实现)
2020/01/16 Python
Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n]
2020/02/13 Python
tensorflow中tf.reduce_mean函数的使用
2020/04/19 Python
Python 分布式缓存之Reids数据类型操作详解
2020/06/24 Python
如何利用Python 进行边缘检测
2020/10/14 Python
进修护士自我鉴定
2013/10/14 职场文书
银行会计财务工作个人的自我评价
2013/10/29 职场文书
思想汇报范文
2013/11/04 职场文书
校园安全广播稿
2014/02/08 职场文书
网页美工求职信
2014/02/15 职场文书
《曹刿论战》教学反思
2014/03/02 职场文书
剪彩仪式主持词
2014/03/19 职场文书
设计师求职信模板
2014/05/06 职场文书
军训口号
2014/06/13 职场文书
学习保证书怎么写
2015/02/26 职场文书
Windows下用Nginx配置https服务器及反向代理的问题
2021/09/25 Servers
斗罗大陆八大特殊魂兽,龙族始祖排榜首,第五最残忍(翠魔鸟)
2022/03/18 国漫