JS将所有对象s的属性复制给对象r(原生js+jquery)


在JavaScript中,你可以使用原生的方法或者结合jQuery来将对象`s`的所有属性复制到对象`r`中。这里我将提供两种方式的示例:

### 原生JavaScript方式

使用`Object.assign()`方法是最简单直接的方式,但请注意,它只会复制对象自身的可枚举属性到目标对象,并且会覆盖目标对象上已有的同名属性。


let s = { a: 1, b: 2, c: 3 };
let r = { d: 4 };

Object.assign(r, s);

console.log(r); // 输出: { d: 4, a: 1, b: 2, c: 3 }

### 结合jQuery的方式

虽然jQuery本身不直接提供复制对象属性的方法,但你可以使用jQuery的`$.each()`方法来遍历源对象的属性,并手动设置到目标对象中。不过,这实际上是在使用jQuery的遍历能力来辅助原生JavaScript的属性操作。


let s = { a: 1, b: 2, c: 3 };
let r = { d: 4 };

$.each(s, function(key, value) {
    r[key] = value;
});

console.log(r); // 输出: { d: 4, a: 1, b: 2, c: 3 }

在这个例子中,`$.each(s, function(key, value) {...})`遍历了对象`s`的所有属性,并通过`r[key] = value;`将每个属性及其值复制到对象`r`中。

注意:虽然结合了jQuery,但核心操作(属性复制)仍然是使用原生JavaScript完成的。jQuery在这里主要提供了一个遍历对象属性的便利方法。