const a = [
{ sub_cnt: 5, sub_price: `+8000` },
{ sub_cnt: 9, sub_price: `+7000` },
{ sub_cnt: 5, sub_price: `-6000` },
{ sub_cnt: 3, sub_price: `-2000` },
{ sub_cnt: 8, sub_price: `-8000` },
{ sub_cnt: 3, sub_price: `+3000` }
];
const b = [
{ sub_cnt: 5, sub_price: `+8000` },
{ sub_cnt: 9, sub_price: `+7000` },
{ sub_cnt: 5, sub_price: `-6000` }
];
function makeKey(sub_cnt, sub_price) {
return sub_cnt + '&&' + sub_price;
}
const set = new Set();
a.forEach((item) => {
const key = makeKey(item.sub_cnt, item.sub_price);
set.add(key);
});
console.log(set);
b.forEach((item) => {
const key = makeKey(item.sub_cnt, item.sub_price);
if (set.has(key)) {
set.delete(key);
}
});
console.log(set);
function CustomMap() {
this.arr = [];
this.add = function (key, value) {
if (this.has(key) == false) {
const keyIdx = makeKeyIdx(key);
this.arr[keyIdx] = value;
return true;
} else {
return false;
}
};
this.delete = function (key) {};
this.has = function (key) {};
}
<Box sx={{ marginBottom: 3 }}>
<TextField label="문의 유형" value={EnumTransferToText(type)} sx={{ marginRight: 2, width: '30%' }} color="secondary" />
<TextField label="유저 ID" value={userId || ''} sx={{ marginRight: 2, width: '20%' }} color="secondary" />
<TextField label="작성 일자" value={createdAt || ''} sx={{ width: '30%' }} color="secondary" />
</Box>
<Box sx={{ marginBottom: 3 }}>
<TextField label="문의 제목" value={title || ''} sx={{ width: '100%' }} color="secondary" />
</Box>
<Box sx={{ marginBottom: 3 }}>
<TextField label="문의 내용" value={content || ''} multiline rows={10} sx={{ width: '100%' }} color="secondary" />
</Box>
논리합 연산자 ||
왼쪽이 true한 값이면 바로 왼쪽 값으로 반환
"apple" || true
// 오른쪽 true 까지 가지않고 바로 "apple" 반환
"banana" || false
// 오른쪽 false 까지 가지않고 바로 "banana" 반환
왼쪽이 falsy한 값이면 오른쪽 값이 반환됨
false || "apple"
// 왼쪽이 false 이므로 오른쪽 피연산자가 그대로 반환 "apple"
둘다 값이면??
"banana" || "apple"
// 둘다 true 한 값이므로 오른쪽까지 넘어가지않고 왼쪽 "banana" 반환