S eda1a14b50ee24bcab19b62f40858e76 jQuery.extend

第1引数に第2、第3の順でマージされる。ただし再帰しない。
第1引数をtrueにした場合はディープコピーする

  var base = {'a': 1, 'b': 2};
  var option = {'c': 3, 'b': 5};

  var merged = $.extend(base, option);
  console.log(merged, base, option);

  // merged: Object a=1 b=5 c=3
  // base  : Object a=1 b=5 c=3
  // option: Object c=3 b=5

デフォルト値の設定

マニュアルより。元を変更したくなければ、第1引数に空オブジェクトを指定する。

var empty = {}
var defaults = { validate: false, limit: 5, name: "foo" };
var options = { validate: true, name: "bar" };
var settings = $.extend(empty, defaults, options);

// Result:
settings == { validate: true, limit: 5, name: "bar" }
empty == { validate: true, limit: 5, name: "bar" }

継承する

Child、Oyaはオブジェクトなので(関数オブジェクト)。

var Child = function(){};
var Oya = function(){};
jQuery.extend(Child.prototype, Oya.prototype)

http://api.jquery.com/jQuery.extend/

もしかして

    他の人の「jQuery.extend」

    S eda1a14b50ee24bcab19b62f40858e76

    無所属ソフトウェアエンジニア

    (1722words)

    最新

      最新エントリ