相关疑难解决方法(0)

JavaScript相当于jQuery的extend方法

背景

我有一个将config对象作为参数的函数.在函数内,我也有default对象.这些对象中的每一个都包含基本上用作函数内其余代码的设置的属性.为了防止必须指定config对象中的所有设置,我使用jQuery的extend方法来填充一个新对象,如果未在对象中指定,则使用对象中的settings任何默认值:defaultconfig

var config = {key1: value1};
var default = {key1: default1, key2: default2, key 3: default 3};

var settings = $.extend(default, config);

//resulting properties of settings:
settings = {key1: value1, key2: default2, key 3: default 3};
Run Code Online (Sandbox Code Playgroud)

问题

这很好用,但我想在不需要jQuery的情况下重现这个功能.是否有一个同样优雅(或接近)的方法用普通的'javascript做到这一点?


编辑:非重复的对齐

这个问题与" 如何动态合并两个JavaScript对象的属性? "问题不重复.虽然这个问题只是想创建一个包含来自两个独立对象的所有键和值的对象 - 我特别想要解决如何在两个对象共享一些但不是所有键以及哪个对象将优先的情况下执行此操作(如果存在重复键,则生成的对象的默认值.更具体地说,我想解决使用jQuery的方法来实现这一点,并找到一种没有jQuery的替代方法.虽然这两个问题的许多答案都重叠,但这并不意味着问题本身是相同的.

javascript jquery object extend

85
推荐指数
4
解决办法
5万
查看次数

标签 统计

extend ×1

javascript ×1

jquery ×1

object ×1