Javascript “Extend” - Dewa Blogger

Halaman

    Social Items

Buy Now

Fungsi ini setara dengan jQuery.extend() yang memungkinkan kita untuk membuat variabel opsional, dimana variabel tersebut bisa dinyatakan ataupun ditiadakan. Jika tidak dinyatakan, maka nilai variabel yang tidak hadir tersebut akan jatuh pada nilai default yang telah ditentukan di dalam fungsi:

function extend(def, alt) {     alt = alt || {};     for (var i in def) {         if (typeof alt[i] === "undefined") {             alt[i] = def[i];         } else if (             typeof def[i] === "object" &&             typeof alt[i] === "object" &&             alt[i] !== null         ) {             alt[i] = extend(def[i], alt[i]);         }     }     return alt; }

Contoh Penggunaan

function myFunction(config) {      var defaults = {         firstName: 'Taufik',         lastName: 'Nurrohman',         age: 22     };      // Extend...     config = extend(defaults, config);      return config;  }

Ketika Anda mengubah beberapa nilai variabel konfigurasi, maka variabel-variabel konfigurasi default yang lain yang tidak diubah akan menyesuaikan:

myFunction({     firstName: 'Foo' });

Hasil

 yang memungkinkan kita untuk membuat variabel opsional JavaScript “Extend”
Taufik telah menjelma Foo.

Sebenarnya dulu Saya sudah pernah menulis posting yang sejenis dengan ini. Tapi metode yang Saya tuliskan dalam posting tersebut tidak bisa untuk menangani objek multi-dimensi menyerupai ini:

var defaults = {     option_1: value_1,     option_2: value_2,     option_3: {         option_3_1: {             option_3_1_1: value_3_1_1,             option_3_1_2: value_3_1_2         },         option_3_2: value_3_2,         option_3_3: value_3_3     },     option_4: value_4 };

Sumber https://www.dte.web.id/

Javascript “Extend”

Fungsi ini setara dengan jQuery.extend() yang memungkinkan kita untuk membuat variabel opsional, dimana variabel tersebut bisa dinyatakan ataupun ditiadakan. Jika tidak dinyatakan, maka nilai variabel yang tidak hadir tersebut akan jatuh pada nilai default yang telah ditentukan di dalam fungsi:

function extend(def, alt) {     alt = alt || {};     for (var i in def) {         if (typeof alt[i] === "undefined") {             alt[i] = def[i];         } else if (             typeof def[i] === "object" &&             typeof alt[i] === "object" &&             alt[i] !== null         ) {             alt[i] = extend(def[i], alt[i]);         }     }     return alt; }

Contoh Penggunaan

function myFunction(config) {      var defaults = {         firstName: 'Taufik',         lastName: 'Nurrohman',         age: 22     };      // Extend...     config = extend(defaults, config);      return config;  }

Ketika Anda mengubah beberapa nilai variabel konfigurasi, maka variabel-variabel konfigurasi default yang lain yang tidak diubah akan menyesuaikan:

myFunction({     firstName: 'Foo' });

Hasil

 yang memungkinkan kita untuk membuat variabel opsional JavaScript “Extend”
Taufik telah menjelma Foo.

Sebenarnya dulu Saya sudah pernah menulis posting yang sejenis dengan ini. Tapi metode yang Saya tuliskan dalam posting tersebut tidak bisa untuk menangani objek multi-dimensi menyerupai ini:

var defaults = {     option_1: value_1,     option_2: value_2,     option_3: {         option_3_1: {             option_3_1_1: value_3_1_1,             option_3_1_2: value_3_1_2         },         option_3_2: value_3_2,         option_3_3: value_3_3     },     option_4: value_4 };

Sumber https://www.dte.web.id/