Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript에서 문자열을 배열로 변환

<시간/>

다음과 같은 특별한 종류의 문자열이 있다고 가정합니다. -

const str ="Integer,1 Float,2.0\nBoolean,True Integer,6\nFloat,3.66 Boolean,False";

String.prototype.split() 메서드를 사용하여 위의 문자열을 다음 배열로 변환하는 JavaScript 함수를 작성해야 합니다. -

const arr = [
   {
      "Integer":1,
      "Float":2.0
   },
   {
      "Boolean":true,
      "Integer":6
   },
   {
      "Float":3.66,
      "Boolean":false
   }
];

변환을 위해 다음 규칙을 사용해야 합니다 -

  • \n 개체의 끝을 표시합니다.

  • 하나의 공백은 개체 내에서 하나의 키/값 쌍을 종료합니다.

  • ',' 하나의 쉼표는 개체의 값과 키를 구분합니다.

따라서 이 함수의 코드를 작성해 보겠습니다 -

예시

이에 대한 코드는 -

const str ="Integer,1 Float,2.0\nBoolean,True Integer,6\nFloat,3.66 Boolean,False";
const stringToArray = str => {
   const strArr = str.split('\n');
   return strArr.map(el => {
      const elArr = el.split(' ');
      return elArr.map(elm => {
         const [key, value] = elm.split(',');
         return{
            [key]: value
         };
      });
   });
};
console.log(stringToArray(str));

출력

콘솔의 출력은 -

[
   [ { Integer: '1' }, { Float: '2.0' } ],
   [ { Boolean: 'True' }, { Integer: '6' } ],
   [ { Float: '3.66' }, { Boolean: 'False' } ]
]