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 相关文章推荐
js中parseFloat(参数1,参数2)定义和用法及注意事项
Jan 27 Javascript
如何使用jQuery Draggable和Droppable实现拖拽功能
Jul 05 Javascript
jquery 快速回到页首的方法
Dec 05 Javascript
javascript客户端遍历控件与获取父容器对象示例代码
Jan 06 Javascript
JavaScript计划任务后台运行的方法
Dec 18 Javascript
jquery.form.js框架实现文件上传功能案例解析(springmvc)
May 26 Javascript
JavaScript模块化之使用requireJS按需加载
Apr 12 Javascript
JavaScript实现微信红包算法及问题解决方法
Apr 26 Javascript
js中innerText/textContent和innerHTML与target和currentTarget的区别
Jan 21 Javascript
vue.js 子组件无法获取父组件store值的解决方式
Nov 08 Javascript
如何在CocosCreator里画个炫酷的雷达图
Apr 16 Javascript
JavaScript canvas实现流星特效
May 20 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
数字转英文
2006/12/06 PHP
Windows下IIS6/Apache2.2.4+MySQL5.2+PHP5.2.1安装配置方法
2007/05/03 PHP
smarty section简介与用法分析
2008/10/03 PHP
PHP5常用函数列表(分享)
2013/06/07 PHP
yii2 RBAC使用DbManager实现后台权限判断的方法
2016/07/23 PHP
Aster vs Newbee BO3 第三场2.18
2021/03/10 DOTA
$.format,jquery.format 使用说明
2011/07/13 Javascript
jquery中ajax学习笔记4
2011/10/16 Javascript
js 利用image对象实现图片的预加载提高访问速度
2013/03/29 Javascript
多个datatable共存造成多个表格的checkbox都被选中
2013/07/11 Javascript
JavaScript中的变量作用域介绍
2014/12/31 Javascript
Node.js 制作实时多人游戏框架
2015/01/08 Javascript
DOM节点深度克隆函数cloneNode()用法实例
2015/01/12 Javascript
JavaScript将当前时间转换成UTC标准时间的方法
2015/04/06 Javascript
Javascript中的getUTCDay()方法使用详解
2015/06/10 Javascript
javascript中for/in循环及使用技巧
2015/09/01 Javascript
安装使用Mongoose配合Node.js操作MongoDB的基础教程
2016/03/01 Javascript
JavaScript面向对象程序设计教程
2016/03/29 Javascript
jQuery实现的图片轮播效果完整示例
2016/09/12 Javascript
jQuery Easyui datagrid行内实现【添加】、【编辑】、【上移】、【下移】
2016/12/19 Javascript
jQuery 添加样式属性的优先级别方法(推荐)
2017/06/08 jQuery
js指定日期增加指定月份的实现方法
2018/12/19 Javascript
基于Python实现的扫雷游戏实例代码
2014/08/01 Python
Python中线程编程之threading模块的使用详解
2015/06/23 Python
使用Python操作MySQL的一些基本方法
2015/08/16 Python
PowerBI和Python关于数据分析的对比
2019/07/11 Python
Python将文字转成语音并读出来的实例详解
2019/07/15 Python
ipython jupyter notebook中显示图像和数学公式实例
2020/04/15 Python
Html5 postMessage实现跨域消息传递
2016/03/11 HTML / CSS
用html5实现语音搜索框的方法
2014/03/18 HTML / CSS
初中三年学生的学习自我评价
2013/11/13 职场文书
护士辞职信范文
2014/01/19 职场文书
商学院大学生求职的自我评价
2014/03/12 职场文书
教育基金募捐倡议书
2014/05/14 职场文书
工作态度不好检讨书
2015/05/06 职场文书
《遗弃》开发商删推文要跑路?官方回应:还在开发
2022/04/03 其他游戏