javascript - 扩展对象

标签 javascript jquery dojo extend

我想在 dojo 中扩展对象,类似于 jQuery 中的对象

var x = $.extend({}, obj1, obj2);

这是解决方案吗

var x;
dojo.extend(x,obj1);
dojo.extend(x,obj2);

或者我可以做

dojo.extend(x,obj1,obj2);

这个可以吗

var x = dojo.extend(obj1, obj2);

最佳答案

如果你想实现与$.extend()相同的语义, 你必须使用 dojo.mixin()而不是 dojo.extend() (扩展原型(prototype)):

var x = dojo.mixin({}, obj1);
dojo.mixin(x, obj2);

编辑:如果您想将代码保留在一行中,您可以:

var x = dojo.mixin(dojo.mixin({}, obj1), obj2);

关于javascript - 扩展对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6455398/

相关文章:

jquery - bootstrap 在小屏幕上隐藏网格内容。网格 > Accordion

javascript - 使用 - jquery "attr"警告从 javascript 生成的 HTML 标记的值

javascript - 是否可以使用 RequireJS 加载自定义 dojo 构建?

javascript - 使用 Javascript 发出 post 请求

dojo - 显示无效消息的编程方式

jquery - 如何使用 jQuery 和 ASP.NET MVC 支持带有循环引用的 JSON?

javascript - DiscortJS 机器人在 channel 上发回一条消息,提及特定用户

javascript - 如何在 Javascript D3 的固定坐标 (x,y) 处显示文本

javascript - 将使用 D3js 创建的 SVG 转换为 PNG

javascript - Phonegap 构建地理定位不起作用