مهلا، ما الذي تفعله وظيفة جافا سكريبت هذه، باختصار شديد؟

تقليل الوظيفة (obj، المسند /*، القيمة الأولية*/) {
  var args = [رد الاتصال]؛
  // `القيمة الأولية` اختيارية
  var hasInitialValue = 2 في الوسائط؛
  hasInitialValue && args.push(arguments[2]);

  رد اتصال الوظيفة (previousValue، currentKey،currentIndex، array) {
    // عندما لا يتم توفير "القيمة الأولية" بعد ذلك
    // `القيمة السابقة` هي القيمة المرتبطة بالمفتاح الأول
    إذا (! hasInitialValue) {
      PrevValue = obj[array[0]];
      hasInitialValue = true;
    }
    إرجاع المسند(
      القيمة السابقه،
      المفتاح الحالي,
      كائن [المفتاح الحالي]،
      الفهرس الحالي,
      مجموعة مصفوفة
    );
  }

  return Array.prototype.reduce.apply(Object.keys(obj), args);
}
system
مهلا، ما الذي تفعله وظيفة جافا سكريبت هذه، باختصار شديد؟

تقليل الوظيفة (obj، المسند /*، القيمة الأولية*/) {
  var args = [رد الاتصال]؛
  // `القيمة الأولية` اختيارية
  var hasInitialValue = 2 في الوسائط؛
  hasInitialValue && args.push(arguments[2]);

  رد اتصال الوظيفة (previousValue، currentKey،currentIndex، array) {
    // عندما لا يتم توفير "القيمة الأولية" بعد ذلك
    // `القيمة السابقة` هي القيمة المرتبطة بالمفتاح الأول
    إذا (! hasInitialValue) {
      PrevValue = obj[array[0]];
      hasInitialValue = true;
    }
    إرجاع المسند(
      القيمة السابقه،
      المفتاح الحالي,
      كائن [المفتاح الحالي]،
      الفهرس الحالي,
      مجموعة مصفوفة
    );
  }

  return Array.prototype.reduce.apply(Object.keys(obj), args);
}
user
تعمل دالة التخفيض على تقليل الكائن المقدم إلى مصفوفة، واستدعاء دالة أصلية مقدمة لكل زوج من قيمة المفتاح في الكائن وإلحاق النتيجة بالمصفوفة.
assistant
system
مهلا، ما الذي تفعله وظيفة جافا سكريبت هذه، باختصار شديد؟

تقليل الوظيفة (obj، المسند /*، القيمة الأولية*/) {
  var args = [رد الاتصال]؛
  // `القيمة الأولية` اختيارية
  var hasInitialValue = 2 في الوسائط؛
  hasInitialValue && args.push(arguments[2]);

  رد اتصال الوظيفة (previousValue، currentKey،currentIndex، array) {
    // عندما لا يتم توفير "القيمة الأولية" بعد ذلك
    // `القيمة السابقة` هي القيمة المرتبطة بالمفتاح الأول
    إذا (! hasInitialValue) {
      PrevValue = obj[array[0]];
      hasInitialValue = true;
    }
    إرجاع المسند(
      القيمة السابقه،
      المفتاح الحالي,
      كائن [المفتاح الحالي]،
      الفهرس الحالي,
      مجموعة مصفوفة
    );
  }

  return Array.prototype.reduce.apply(Object.keys(obj), args);
}
user
// مثال على الاستخدام
var obj = {a: 1، b: 2، c: 3}؛
var result = reduce(obj، [0]، [1])؛
console.log(result)؛ // [1، 2، 3]

//
assistant