function ratingDetail(num) { // 여기에 코드를 작성하세요. let result; if (num >=90 && num <=100 ) { result = "A"; if (num >= 96) { result += "+"; } else if (num <= 93) { result += "-"; } else { } } else if (num >= 80 && num < 90) { result = "B"; if (num >= 86) { result += "+"; } else if (num <= 83) { result += "-"; } else { } } else if (num >= 70 && num < 80) { result = "C"; if (num >= 76) { result += "+"; } else if (num < 73) { result += "-"; } else { } } else if (num >= 60 && num < 70) { result = "D"; if (num >= 66) { result += "+"; } else if (num < 63) { result += "-"; } else { } } else if (num > 0 && num < 60) { result = "등급미달"; } else { result = "잘못된 값입니다"; } return result; } ratingDetail(60); output에 맞추다 보니 이렇게 코드가 길고 가독성이 떨어지게 되었습니다. if문을 중첩으로 사용하는 것 외의 다른 방법으로 코드를 최적화할 수 있는 방법이 궁금합니다. 커리큘럼 중 어느 부분을 찾아서 공부하고 응용하면 될까요?
안녕하세요? nanoid를 생성할 때 에러가 발생합니다. import "react-native-get-random-values"; import { nanoid } from "nanoid"; 를 이용하여 nanoid를 생성할 때 1번째 까지는 정상적으로 생성되나 2번째부터 const id = nanoid(); 위의 생성 부분에서 ERROR TypeError: undefined is not a function, js engine: hermes 에러가 발생합니다. 대신 나노id를 non-secure로 생성하면 계속해서 생성해도 문제 없이 생성됩니다. 버전은 아래와 같습니다만 react-native-get-random-values는 1.9.0 버전으로변경해도 동일한 문제가 발생합니다. 버전 정보 "dependencies": { "@react-navigation/native": "^6.1.6", "@react-navigation/native-stack": "^6.9.12", "expo": "~48.0.15", "expo-status-bar": "~1.4.4", "expo-updates": "~0.16.4", "nanoid": "^4.0.2", "prop-types": "^15.8.1", "react": "18.2.0", "react-native": "0.71.8", "react-native-get-random-values": "~1.8.0", "react-native-safe-area-context": "4.5.0", "react-native-screens": "~3.20.0" }, 이 문제가 반드시 짚고 넘어가야하는 부분인가요? 별로 중요하지 않으면 그냥 비보안 모드나 uuid를 사용하는걸로 넘어가고싶은데 답변 부탁드립니다. 감사합니다.
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
안녕하세요. jwt를 발급할 때 refresh와 aceess 토큰에 담긴 페이로드는 동일할까요 ? accessToken의 탈취 당했을 때를 대비해서 accessToken의 만료기한 을 짧게두고 refreshToken의 만료기한을 길게 두는 것으로 알고 있는데, refreshToken이 탈취당했을 때 refreshToken으로도 사이트에 인가된다면 굳이 이 두개를 나누는 의미가 없을 것 같은데,, 현업에서는 어떠한 식으로 이뤄지는지 궁금합니다..
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요 영한님! 이번 강의에서 프로젝트 생성하실 때 "스프링 부트 3.x 대 이상으로 하셔야 합니다" 라고 말씀해주셨는데 2.x대 버전이 아닌 3.x 대로 해야하는 특별한 이유가 있을까요~? 3.x 대의 업데이트에 대한 내용은 공식문서와 많은 블로그에 나와있어서 확인을 했는데 혹시 강의에 있어서 특별한 이유가 있는지 궁금합니다~!
그림에서 웹 브라우저가 HTTP 메시지를 생성한다고 할때 클라이언트가 서버를 치게 될 때를 말씀하시는게 맞을까요?? SOCKET 라이브러리를 통해 전달 부분에서 A : TCP/IP 연결 한다는 말씀을 하셨는데 그것은 패킷 그림과 별도로 서버와 가상의 연결을 한다는 말씀이 맞을까요?? ((추측) 이때도 TCP/IP 패킷을 전달하는데 영상에 그려진 패킷과는 다른 패킷을 전달하는게 맞을까요? 맞다면 이 TCP/IP 패킷은 어떤 정보를 담아서 전달하는건지 간단하게 궁금합니다.) (즉, SOCKET 라이브러리에 요청(서버) IP,PORT 정보가 있기 때문에 패킷 그림과 별도로 해당 IP, PORT에 사전에 3 hand shaking을 하는 것이 맞을까요??) 2.번이 맞다면 사전의 3hand-shaking을 통한 TCP/IP패킷 전달을 통해 먼저 가상의 연결을 한 다음 웹 브라우저 HTTP 메세지 정보 패킷 + OS에서 해당 TCP/IP 패킷을 포함 시켜서 해당 서버로 보낸다는 말씀이 맞을까요??
소스코드에서 _buildmanifest.js에 들어가보면 모든 경로가 표시되던데 이러면 관리자 페이지의 모든 경로도 볼 수 있어서 어느정도 앱 규모(?)를 알 수 있다는 건데 이거 보안적으로 괜찮은걸까요? 관리자 페이지는 따로 만들어야 하는 건지 아니면 slug 경로를 이용해서 안 보이게 해야하는 건지 갑자기 머리가 복잡해지네요😂 다른 분들은 어떻게 하시는지 궁금합니다.
안녕하세요. 5강 따라하던 중 save 에러 생겨 문의 남깁니다. 테스트 해 보니 이모지를 적을 경우 생기는 에러인 것 같네요. 이모지는 string으로 처리가 안되는건지, 이모지를 처리하려면 어떻게 해야하는 것인지 궁금합니다. An unexpected error has occurred. Please try again later. (500002)
안녕하세요. notion으로 저만의 강의 노트를 만들어서 정리한 자료가 있습니다. 강의 내용이 구체적으로 포함되어있고 선생님의 강의 자료를 참고했습니다. 이 자료의 링크와 실습 코드를 제 github에 업로드하려고 하는데 출처와 강의 정보를 명시하여 업로드해도 될까요? github에 올린다고 볼 사람도 없는 건 둘째치고 혹시나 남이 본다고 하더라도 홍보 효과도 될 거 같아 좋을 거 같습니다!