조건 분기 헷갈려서요.. 채택완료
권한 (관리자, 유저, 방문자)
1.관리자(admin) : admin
2,아이디(user_id) : 1)로그인 하지 않았을 경우
2)로그인 했을 경우
3. public : boolean (Y || N)
public이 Y인 경우 모든 사람이 볼수 있음.
pubilc이 N인 경우 admin과 작성자만 볼수 있음.
작성자 id : test
</p>
<p>if (public === 'N') {</p>
<p>// 방문 자인 경우 </p>
<p> if ( user_id !== 'tester' || !admin){</p>
<p> console.log('관리자랑 나만 볼거야')</p>
<p> }</p>
<p> console.log('다 봐라') </p>
<p>} else if (public === 'Y') {</p>
<p> console.log('다 봐라') </p>
<p>}</p>
<p>
1, 여기에서 조건 분기가 잘 안되는데
&& 인지 || 인지 헷갈리네요
2. console.log('다봐라')
이것을 한번만 쓰게 바꿀수 있을까요?
부탁드립니다.
답변 2개
1.
if(user_id === 'tester' || admin || public === 'Y') {
console.log('본다')
} else {
console.log('안본다')
}
2.
if (public === 'N') {
if (user_id !== 'tester' && !admin){
// 작성자도 아니고, 관리자도 아니다.
console.log('관리자랑 나만 볼거야')
} else {
// 테스터 거나 관리자다
console.log('관리자거나 나다')
}
} else if (public === 'Y') {
console.log('다 봐라')
}
댓글을 작성하려면 로그인이 필요합니다.
좀 이상한게 있네요
boolean 인데 true / false 가 아니라 .Y/ N 인가요??
Y / N 은 문자(열)로 처리할때 주로 사용합니다.
전제조건이 또하나 이상합니다.
로그인한경우 user_id 가 존재, 로그인안한경우 user_id가 부재(null) 인것을 표기하신거 같은데
글쓴이와 관리자만 본다고 했는데
글쓴이의 정보는어떤걸로 판단하나요?
그래서,
제가 임의적으로 글쓴이는 wr_mb_id 라고 칭하겠습니다.
처리 방식은
[조건]
</p>
<p>1.관리자(admin) : admin</p>
<p>2,아이디(user_id) : 1)로그인 하지 않았을 경우 </p>
<p> 2)로그인 했을 경우 </p>
<p>3. public : Y || N</p>
<p>4. 글쓴이id : wr_mb_id의 값</p>
<p> </p>
<p>public이 Y인 경우 모든 사람이 볼수 있음.</p>
<p>pubilc이 N인 경우 admin과 작성자만 볼수 있음.</p>
<p>
</p>
<p> </p>
<p>if (public == "Y" && user_id) {</p>
<p> if (user_id == wr_mb_id || admin) {</p>
<p> console.log('관리자랑 나만 볼거야');</p>
<p> } </p>
<p>}</p>
<p> </p>
<p>console.log('다 봐라');</p>
<p>
와 같이 하면
if 문 밖에
'다 봐라'를 찍고 else문을 제거하면
모두가 다 볼수있는 상황이 됩니다.
and : &&
or : ||
문자열 비교 : ==
형(type)까지 비교 : ===
https://programmers.co.kr/learn/questions/25">https://programmers.co.kr/learn/questions/25
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
이제서야 봤네요
채택 해드리지 못해서 죄송합니다.
사유는 먼저 글쓰신 분에게 채택했습니다.
채택이 2개가 안되는군요 ㅠㅠ