다음과 같은 특별한 종류의 문자열이 있다고 가정합니다. -
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' } ] ]