javascript实现连续赋值


Posted in Javascript onAugust 10, 2015

最近项目接触,时间比较充足,到网上逛逛了逛无意中在网上发现了这个问题,预知的结果和真实结果相差太大。

请看下面代码

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

如果把代码拆开来看,结果就是我们所想的那样

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

分析代码:

a.x=a={n:2}

js的赋值运算是右结合的,上面等同于a.x=(a={n:2})

js的求值运算是从左到右的(PS:和同事讨论,他说是从左到右,我认为是从右到左,最后发现是我错了)

1)a.x=(括号内的最终结果)

   查找a的x属性不存在后在a指向的对象中添加一个属性x,这个x属性要把一个结果赋给它,那好吧,我等着结果

javascript实现连续赋值

2)因为是要获得括号内的结果,那么a.x就一直等着括号内给他返回结果,所以开始求值a={n:2}得到结果后返回给这个新属性x

javascript实现连续赋值

3)回到括号内的a={n:2},a发生指向改变了

javascript实现连续赋值

 javascript实现给<a href=""> href赋值

document.getElementById("a").href=""; a是要添加超链接a的id,比如<a id='a' >信息提示</a>
<form action="" method="post" name="myform" >
<a href="" id=links >信息提示 </a >
</form >
<script >
document.getElementById("links").href="http://www.baidu.com";
</script >

此代码内容实现给<a hre="">href赋值,怎么样代码很简单吧。

以上内容是本文用javascript实现连续赋值的全部内容,希望对大家有所帮助,本站每天都有新的内容更新,继续关注哟!

Javascript 相关文章推荐
pjblog修改技巧汇总
Mar 12 Javascript
ext读取两种结构的xml的代码
Nov 05 Javascript
flexigrid 类似ext grid的JS表格代码
Jul 17 Javascript
了解了这些才能开始发挥jQuery的威力
Oct 10 Javascript
各浏览器对document.getElementById等方法的实现差异解析
Dec 05 Javascript
使用focus方法让光标默认停留在INPUT框
Jul 29 Javascript
node.js中的fs.linkSync方法使用说明
Dec 15 Javascript
JavaScript中的逻辑判断符&amp;&amp;、||与!介绍
Dec 31 Javascript
jQuery实现文字自动横移
Jan 08 Javascript
Angularjs实现下拉框联动的示例代码
Aug 22 Javascript
JS库之Particles.js中文开发手册及参数详解
Sep 13 Javascript
js的Object.assign用法示例分析
Mar 05 Javascript
jQuery+css3实现Ajax点击后动态删除功能的方法
Aug 10 #Javascript
js中的内部属性与delete操作符介绍
Aug 10 #Javascript
jquery中的工具使用方法$.isFunction, $.isArray(), $.isWindow()
Aug 09 #Javascript
javascript中对变量类型的判断方法
Aug 09 #Javascript
jquery仿百度百科底部浮动导航特效
Aug 08 #Javascript
jquery实现页面虚拟键盘特效
Aug 08 #Javascript
Jquery实现顶部弹出框特效
Aug 08 #Javascript
You might like
PHP Zip压缩 在线对文件进行压缩的函数
2010/05/26 PHP
php 操作数组(合并,拆分,追加,查找,删除等)
2012/07/20 PHP
php检测用户是否用手机(Mobile)访问网站的类
2014/01/09 PHP
浅谈PHP中foreach/in_array的使用
2015/11/02 PHP
用PHP的socket实现客户端到服务端的通信实例详解
2017/02/04 PHP
Laravel Eloquent ORM 实现查询表中指定的字段
2019/10/17 PHP
基于thinkphp6.0的success、error实现方法
2019/11/05 PHP
地址栏上的一段语句,改变页面的风格。(教程)
2008/04/02 Javascript
JavaScript 拾漏补遗
2009/12/27 Javascript
检测input每次的输入是否合法遇到汉字输入就有问题
2012/05/23 Javascript
Jquery显示、隐藏元素以及添加删除样式
2013/08/09 Javascript
100个不能错过的实用JS自定义函数
2014/03/05 Javascript
jQuery中position()方法用法实例
2015/01/16 Javascript
在easyUI开发中,出现jquery.easyui.min.js函数库问题的解决办法
2015/09/11 Javascript
简单解析JavaScript中的__proto__属性
2016/05/10 Javascript
JavaScript实现图片懒加载的方法分析
2018/07/05 Javascript
node获取客户端ip功能简单示例
2019/08/24 Javascript
Vue.js实现立体计算器
2020/02/22 Javascript
python使用正则表达式分析网页中的图片并进行替换的方法
2015/03/26 Python
很酷的python表白工具 你喜欢我吗
2019/04/11 Python
Python实现去除图片中指定颜色的像素功能示例
2019/04/13 Python
python读写csv文件实例代码
2019/07/05 Python
python3中sys.argv的实例用法
2020/04/24 Python
Django中的AutoField字段使用
2020/05/18 Python
通过实例了解Python异常处理机制底层实现
2020/07/23 Python
英国优质鞋类专家:Robinson’s Shoes
2017/12/08 全球购物
世界上最好的精品店:Shoptiques
2018/02/05 全球购物
La Senza官网:北美顶尖性感内衣品牌
2018/08/03 全球购物
经济管理专业自荐信
2013/12/30 职场文书
假期安全教育广播稿
2014/10/04 职场文书
小学生通知书评语
2014/12/31 职场文书
2015年上半年党建工作总结
2015/03/30 职场文书
学校艾滋病宣传活动总结
2015/05/09 职场文书
遗愿清单观后感
2015/06/09 职场文书
2016年9月份红领巾广播稿
2015/12/21 职场文书
redis 存储对象的方法对比分析
2021/08/02 Redis