Saya menggunakan reaksi. Saya memiliki fungsi yang menggabungkan kunci suatu objek dan mengembalikan hasilnya sebagai string. Saya mendapatkan kesalahan yang terlihat seperti ini: Baris 64:7: Diharapkan tugas atau ...

1
Kevin Wu 17 Juni 2021, 20:55

2 jawaban

Jawaban Terbaik

Ubah ini

const allConcat = (listOfObj) => {
    let stringConcat = '';
    Object.keys(listOfObj).map((item, i)=>{
      (listOfObj[item] === 1)? stringConcat += item : null
    });
    return stringConcat
  }

Untuk ini

const allConcat = (listOfObj) => Object.entries(listOfObj)
    .filter(([key, val]) => val === 1)
    .map(([key]) => key)
    .join('')
0
Miguel Coder 17 Juni 2021, 18:23

Anda dapat menggunakan array.reduce untuk mencapai hal yang sama dan tidak harus membuat konstanta let atau mengulangi dua kali:

const allConcat = (listOfObj) => 
 Object.keys(listOfObj).reduce((acc, curr, index, array) => 
  listOfObj[curr] === 1 ? acc.concat(array[index + 1] ? `${curr}, `: curr) : acc,
 '');
0
jean182 17 Juni 2021, 18:39