通常、defaultOptions でオプションを拡張すると、新しいオブジェクトが作成されますが、オプション オブジェクトを再利用したいと思います。以下のコードを参照してください。
私は基本的に次のことをしたい:
var defaultOptions = {'width': '10px', 'size': '10px'};
var options = {'width': '300px', 'name': 'sam'};
// I want to re-use the same options variable as target for extend
var optionsAfterExtend = $.extend(options, defaultOptions, options);
// should return true
alert(options.width == '300px');
alert(optionsAfterExtend == '300px');
alert(options.size == '10px');
alert(optionsAfterExtend == options);
// Because I may add extra info to the options object which the client using my plugin can use / re-use
optionsAfterExtend.data = 'sam';
// So now optionsAfterExtend.data and options.data should both equal 'sam'
長い間検索してjquery拡張ドキュメントを読んでみましたが、適切な方法が見つかりませんでした。私がこれを欲しがるのは愚かなことですか?だとしても、どうすればうまくいくのか、今でも気になるところです。