Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript 객체 항목의 키에서 부분 문자열을 추출하는 방법

네, 가능합니다. Object.fromEntries() 메서드와 substr() 메서드를 함께 사용하면 객체 키에서 원하는 부분 문자열만 추출할 수 있습니다. substr() 안에는 부분 문자열을 시작할 인덱스와 잘라낼 문자열의 길이를 지정합니다.

동작 원리

Object.entries()는 객체를 [키, 값] 쌍의 배열로 변환하고, map()으로 각 키에 substr()을 적용한 뒤, 마지막에 Object.fromEntries()가 다시 배열을 객체 형태로 되돌려 줍니다.

예제

const originalString = {
    "John 21 2010" :1010,
    "John 24 2012" :1011,
    "John 22 2014" :1012,
    "John 22 2016" :1013,
}
const result = Object.fromEntries(Object.entries(originalString).
map(([k, objectValue])=>
[k.substr(0, k.length-5), objectValue]));
console.log(result)

위 예제에서는 각 키의 끝에서 5자리(연도 부분)를 제거하여 "John 21", "John 24"처럼 이름과 나이만 남긴 새로운 객체를 생성합니다.

프로그램 실행 방법

위 프로그램을 실행하려면 Node.js 환경에서 다음 명령어를 입력합니다.

node fileName.js

여기서는 파일 이름이 demo41.js라고 가정합니다.

출력 결과

코드를 실행하면 다음과 같은 결과가 출력됩니다.

PS C:\Users\Amit\JavaScript-code> node demo41.js
{ 'John 21': 1010, 'John 24': 1011, 'John 22': 1013 }

결과를 보면 각 키에서 연도 정보가 제거되고, 값은 그대로 유지된 새로운 객체가 만들어진 것을 확인할 수 있습니다.