Heim  >  Artikel  >  Web-Frontend  >  JS将所有对象s的属性复制给对象r(原生js+jquery)_javascript技巧

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

WBOY
WBOYOriginal
2016-05-16 17:02:381095Durchsuche

原生写法:

复制代码 代码如下:

/**
   * 将所有 s 的属性复制给 r
   * @param r {Object}
   * @param s {Object}
   * @param is_overwrite {Boolean} 如指定为 false ,则不覆盖已有的值,其它值
   *   包括 undefined ,都表示 s 中的同名属性将覆盖 r 中的值
   */
  mix: function (r, s, is_overwrite) { //TODO:
   if (!s || !r) return r;

   for (var p in s) {
    if (is_overwrite !== false || !(p in r)) {
     r[p] = s[p];
    }
   }
   return r;
  }

jQuery写的话就太方便了

复制代码 代码如下:

var a={
        aa:1,
        ab:2
    };
var b={
        ba:1,
        bb:2
    };

    $.extend(a,b);
    console.info(a);

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn