Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

แปลงสตริงด้วยตัวคั่นเป็นอาร์เรย์ของวัตถุใน JavaScript


สมมติว่าเรามีสตริงเช่นนี้ −

const str = 'Option 1|false|Option 2|false|Option 3|false|Option 4|true';

เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับสตริงดังกล่าว

ฟังก์ชันควรแยกสตริงออกจาก '|' เพื่อแยกตัวเลือกและค่าของมันและแปลงเป็นอาร์เรย์ของวัตถุเช่นนี้ −

const output = [ {
   "option": "Option 1",
   "value": false
   }, {
      "option": "Option 2",
      "value": false
   }, {
      "option": "Option 3",
      "value": false
   }, {
      "option": "Option 4",
      "value": true
   }
];

ตัวอย่าง

const str = 'Option 1|false|Option 2|false|Option 3|false|Option 4|true'; const stringToObject = (str = '') => {
   const res = [];
   for (let i = 0, a = str.split('|');
   i < a.length; i += 2) {
      const option = a[i], value = JSON.parse(a[i + 1]);
      res.push({ option, value });
   }
   return res;
};
console.log(stringToObject(str));

ผลลัพธ์

และผลลัพธ์ในคอนโซลจะเป็น −

[
   { option: 'Option 1', value: false },
   { option: 'Option 2', value: false },
   { option: 'Option 3', value: false },
   { option: 'Option 4', value: true }
]