반응형
Json Array 배열에 어떤 조건인지 체크해서 특정 배열의 값을 가져오고 싶은 경우가 있다.
// 샘플 Json Array 데이터
const jsonArray = [
{ id:1, name: 'John', age: 25},
{ id: 2, name: 'Tom', age:28},
{ id: 3, name: 'Doe', age:34}
];
이 배열에서 id든 name이든 age든 공백이 있는 배열을 가져와보자.
jsonArray.forEach(obj => {
for (const key in obj) {
if (typeof obj[key] === 'string' && obj[key].trim() === '') {
console.log(obj);
}
}
});
이렇게 해도 되지만, some 을 한번 사용해보자.
jsonArray.forEach(obj => {
const hasEmptyValue = Object.values(obj).some(value => {
return typeof value === 'string' && value.trim() === '';
});
if (hasEmptyValue) {
console.log(obj);
}
});
공백 말고 name에 숫자나 특수문자, 자릿수는 2자리 미만, 100자리 초과인 케이스를 뽑아내보자.
jsonArray.forEach(obj => {
const isInvalidName = (/\d/.test(obj.usrNm)) || (obj.usrNm.length < 2 || obj.usrNm.length > 100) || /[!@#$%^&*(),.?":{}|<>]/.test(obj.usrNm);
if (isInvalidName) {
console.log(obj);
}
});
반응형
'개발 > FRONT' 카테고리의 다른 글
VUE 로그인 input validation (2) | 2024.01.06 |
---|---|
Cookie and JavaScript (1) | 2024.01.03 |
아이폰(IOS)에서 new Date 포맷 오류 (0) | 2023.12.31 |
NUXT에 대하여 (0) | 2023.12.30 |
VUE에 대해서 (0) | 2023.12.30 |