关于jquery的$.extend(true,{},m,n)的一个小问题
2016-04-06 13:39
459 查看
如标题:假如m = {name:{name1:1, name2:2, name3:3}},
n = {name:{name1:11, name2:22, name4:44}}
注意:此处及下文说的都是内部嵌套数组的对象,而不是像{name1:1,name2:2,name3:3}这样的不含嵌套数组的对象
如果var temp = $.extend(true,{},m,n);
则temp={name:{name1:11,name2:22,name3:3,name4:44}}
如果把true换成false
则temp={name:{name1:11,name2:22,name4:44}}
不管是true还是false,均是新建一个Object,而不改变原参数。
如果不写true或false,则默认false,像.extend(,m,n),则会新建一个Object,不改变m,n,而.extend(m,n)这个,会改变m
综上true的作用是进行合并时保留m中的名称不同于n的属性
而false的作用是不保留。
n = {name:{name1:11, name2:22, name4:44}}
注意:此处及下文说的都是内部嵌套数组的对象,而不是像{name1:1,name2:2,name3:3}这样的不含嵌套数组的对象
如果var temp = $.extend(true,{},m,n);
则temp={name:{name1:11,name2:22,name3:3,name4:44}}
如果把true换成false
则temp={name:{name1:11,name2:22,name4:44}}
不管是true还是false,均是新建一个Object,而不改变原参数。
如果不写true或false,则默认false,像.extend(,m,n),则会新建一个Object,不改变m,n,而.extend(m,n)这个,会改变m
综上true的作用是进行合并时保留m中的名称不同于n的属性
而false的作用是不保留。
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- Extjs4.0 最新最全视频教程
- Javascript中toFixed方法的改进
- JavaScript演示排序算法
- 2015-2016网页设计趋势分析 Web Design of Trends
- 5个常见可用性错误和解决方案
- jQuery Ajax 跨域调用
- 移动端的长按事件
- jquery教程靠边站,一分钱不花让你免费学会jquery
- JQuery+Strusts1.x无刷新登录
- js数组实现图片轮播
- $.ajax()方法详解
- jQuery ajax - ajax() 方法
- JavaScript 各种遍历方式详解
- 数组方法汇总
- jQuery Html控件基本操作(日常收集整理)
- jQuery插件实现文字无缝向上滚动效果代码
- jQuery菜单插件用法实例
- JQuery 初体验(建议学习jquery)
- 基于Jquery和CSS3制作数字时钟附源码下载(CSS3篇)