no image
네트워크 - 서버를 설치하는 방법
⭐️ 서버를 설치하는 방법 서버를 설치하는 방법에는 랙 마운트형, 블레이드형, 타워형 등이 있습니다. 랙 마운트형(Rack Mount) 서버: 랙 마운트형 서버는 서버 랙(Rack)에 설치되는 형태의 서버입니다. 일반적으로 1U, 2U, 4U 등의 높이로 제작되어, 랙 내부에서 최대한 많은 서버를 설치할 수 있도록 설계되어 있습니다. 이러한 서버는 대규모 데이터 센터에서 많은 서버를 한 공간에 설치하여 공간을 절약하고, 효율적인 관리를 가능하게 합니다. 여기서 1U, 2U, 4U가 무엇을 의미할까요? 랙 마운트 서버는 일반적으로 1U, 2U, 4U 등의 높이로 제작되어 있습니다. 이러한 높이는 랙(Rack) 내부에서 서버를 설치하는데 필요한 공간을 나타냅니다. 1U: 1U란 유닛(Unit)의 약자로, 1..
2023.07.13
no image
네트워크 - 서버
⭐️ 서버란 무엇인가? 서버란 다른 컴퓨터나 장치들에게 정보나 서비스를 제공하는 컴퓨터 시스템을 말합니다. 서버는 클라이언트가 요청한 정보나 서비스를 처리하고 응답하는 역할을 수행합니다. 이러한 기능을 통해 서버는 네트워크 환경에서 데이터를 중앙 집중적으로 관리하고, 다수의 클라이언트들에게 일관된 서비스를 제공할 수 있습니다. 서버는 다양한 분야에서 사용되며, 예를 들어 웹 서버는 인터넷 상에서 웹 페이지를 제공하는 역할을 하고, 데이터베이스 서버는 데이터를 저장하고 관리하는 역할을 합니다. 이 외에도 메일 서버, 파일 서버, 애플리케이션 서버 등 다양한 종류의 서버가 있습니다. 서버는 클라이언트와의 상호작용을 통해 정보나 서비스를 제공하기 때문에, 많은 사용자들이 동시에 접속하면 서버의 성능이 저하될 ..
2023.07.13
no image
네트워크 - URL, URI, URN
⭐️ URL, URI, URN이 뭔데요? 네트워크를 공부하기 시작했다면 금방 만나볼 수 있는 친구들. 우리가 흔히 사용하는 www.naver.com , www.youtube.com -->URL 이다. 그래서 URI는 뭐고 URL, URN은 무엇인지 알아보자. 우선, 그림으로 전체적인 형태를 살펴보자. URN과 URL은 URI의 하위 개념이다. 💫 URI (Uniform Resource Identifier) - 인터넷에서 자원을 식별하고 위치를 지정하는 중요한 도구로 사용된다. - 웹 브라우저를 통해 웹 페이지에 접근 하거나, API 요청을 보내거나 파일에 접근하는 등의 다양한 용도로 사용된다. - URL(데이터가 어디에 있는가?) + URN (데이터의 이름은 무엇인가) = URL(ABC는 어디에 있다) ..
2023.07.13
자바스크립트 기초 (9) - HTML,CSS 수정하기
자바스크립트를 사용하여 HTML 및 CSS를 수정하는 것은 동적인 웹 페이지를 만들고 상호작용성을 추가하는 데 매우 유용합니다. 아래에서는 자바스크립트를 사용하여 HTML 요소를 조작하고 CSS 스타일을 변경하는 방법에 대해 설명하겠습니다. 1. HTML 요소 선택하기 : 자바스크립트로 HTML 요소를 수정하기 전에 해당 요소를 선택해야 합니다. 일반적으로 document.querySelector() 또는 document.getElementById()와 같은 DOM 메서드를 사용하여 선택할 수 있습니다. 예를 들어, 아이디가 "myElement"인 요소를 선택하는 방법은 다음과 같습니다. - const element = document.getElementById("myElement"); 2. HTML 내..
2023.07.09
no image
자바스크립트 기초 (8) - 반복문
⭐️ 반복문 ? 반복문이란 말 그대로 반복, 중복되는 코드의 양을 굉장히 효과적으로 줄일 수 있다. 자바스크립트에는 다양한 종류의 반복문이 있습니다. 각각의 반복문은 특정한 조건을 만족할 때까지 코드 블록을 반복적으로 실행합니다. 이를 통해 코드를 단순화하고 반복 작업을 자동화할 수 있습니다. 💫 반복문의 종류 1. for 반복문 : for 반복문은 초기화식, 조건식, 증감식을 포함한 세 가지 부분으로 구성됩니다. 초기화식은 반복문의 시작 시점에서 한 번만 실행되며, 조건식은 반복문의 각 반복마다 평가되고 참일 경우 계속하고 거짓일 경우 반복을 종료합니다. 코드 블록 내의 실행문들이 실행된 후에는 증감식이 실행되어 반복문의 제어 흐름을 결정합니다. 2. while 반복문 : while 반복문은 조건식이 ..
2023.07.09
자바스크립트 기초 (7)
⭐️ 논리 연산자 && , || 조건문에 추가적으로 많이 사용되는 것이 논리 연산자이다. 자바스크립트에서는 논리 연산자를 사용하여 여러 개의 조건을 결합하고, 조건문이나 논리적인 판단을 수행할 수 있습니다. 주요한 세 가지 논리 연산자는 다음과 같습니다: 1. 논리곱 (AND) 연산자 (&&) : 논리곱 연산자는 두 개의 조건이 모두 참일 때 전체 식을 참으로 평가합니다. Ex1) if (조건1 && 조건2) { // 조건1과 조건2가 모두 참인 경우 실행되는 코드 } Ex2) if(a===3 && b===2) {}, a가 3이고 b가 2인 경우에만 코드 실행 2. 논리곱 (OR) 연산자 (||) : 논리합 연산자는 두 개의 조건 중 하나 이상이 참일 때 전체 식을 참으로 평가합니다. Ex1) if (조..
2023.07.05
no image
자바스크립트 기초 (6)
⭐️ 비교 연산자 자바스크립트에서는 다양한 비교 연산자를 사용하여 값 또는 표현식을 비교할 수 있습니다. 비교 연산자를 어떤 상황에서 많이 사용하느냐, 함수를 사용할 때 특정 조건에서만 호출되어 기능을 제공해줘야 하는 상황이 많이 있습니다. 그런 상황에서 특정 조건을 설정할 때 비교 연산자를 많이 사용합니다. 예를 들어, 달력을 통해 DB에서 데이터들을 가져오는 함수를 만든다고 가정했을 때 사용자가 입력한 날짜가 시스템 시간보다 더 미래의 날짜라면 DB에는 해당하는 데이터가 없으므로 잘못된 입력을 했다는 알림창을 띄우는 경우가 있습니다. 이렇게 조건문을 통해 비교 연산자 사용 예시를 알아봤습니다. 💫 비교 연산자에는 어떤 것들이 있을까요? 1. 동등 비교 (==) : 동등 비교 연산자 ==는 두 개의 값..
2023.07.05
no image
자바스크립트 기초 (5)
⭐️ 함수란? 함수는 코드 블록을 정의하고 재사용 가능한 기능 단위로 사용하는 데 사용됩니다. 함수는 특정 작업을 수행하고 값을 반환할 수 있습니다. 함수는 프로그래밍에서 중요한 개념 중 하나이며, 다양한 방식으로 정의하고 호출할 수 있습니다. 중복되는 기능을 하나의 메서드로 사용자 정의하여 호출하며 사용이 가능하다는 것 함수의 기본 형태는 여러 가지가 있습니다. 이 외에도 화살표 함수, 메서드 방식, 즉시 실행 함수 등 여러 형태가 있지만 주로 사용하는 것들을 예시로 들어봤습니다. 자바스크립트는 동적인 기능들을 만들다보니 특정 버튼을 누르면 이벤트가 일어나는 onclick이나 mouseover, onload 같은 이벤트 핸들러들을 많이 사용하게 됩니다. 클릭 이벤트가 발생했을 시 특정 함수를 호출하여 ..
2023.07.05

Table of contents

    서버


    ⭐️ 서버를 설치하는 방법

    서버를 설치하는 방법에는 랙 마운트형, 블레이드형, 타워형 등이 있습니다.

    랙 마운트형(Rack Mount) 서버: 

    랙 마운트형 서버는 서버 랙(Rack)에 설치되는 형태의 서버입니다. 

    일반적으로 1U, 2U, 4U 등의 높이로 제작되어, 랙 내부에서 최대한 많은 서버를 설치할 수 있도록 설계되어 있습니다. 

    이러한 서버는 대규모 데이터 센터에서 많은 서버를 한 공간에 설치하여 공간을 절약하고, 효율적인 관리를 가능하게 합니다.

     

    여기서 1U, 2U, 4U가 무엇을 의미할까요?

    랙 마운트 서버는 일반적으로 1U, 2U, 4U 등의 높이로 제작되어 있습니다. 

    이러한 높이는 랙(Rack) 내부에서 서버를 설치하는데 필요한 공간을 나타냅니다.

    1U: 1U란 유닛(Unit)의 약자로, 1U 서버는 랙 내부에서 1.75인치(약 4.45cm)의 높이를 차지합니다. 

    1U 서버는 작고 경제적인 서버로, 대규모 데이터 센터에서 많이 사용됩니다.

    2U: 2U 서버는 랙 내부에서 3.5인치(약 8.89cm)의 높이를 차지합니다. 2U 서버는 1U 서버보다 크지만, 

    더 많은 하드웨어를 장착할 수 있습니다. 또한, 1U 서버보다 더욱 효율적인 냉각 시스템을 제공할 수 있습니다.

    4U: 4U 서버는 랙 내부에서 7인치(약 17.78cm)의 높이를 차지합니다. 4U 서버는 1U나 2U 서버보다 더 크고, 

    많은 하드웨어를 장착할 수 있습니다. 따라서, 대규모 데이터 처리 및 고성능 컴퓨팅에 적합합니다.

    서버의 높이가 높아질수록, 더 많은 하드웨어를 장착할 수 있지만, 대신 공간을 많이 차지하게 됩니다. 

    따라서, 서버를 설치하는 랙(Rack)의 크기와 공간을 고려하여 적절한 높이의 서버를 선택해야 합니다.

     

    랙 마운트형 서버는 쉽게 얘기하면 

    이렇게 생긴 서버들을 가로로 캐비넷에 넣는 방식이다.


    블레이드형(Blade) 서버

    블레이드형 서버는 랙 마운트형 서버와 비슷하지만, 더욱 고밀도로 설계되어 있습니다. 일반적으로 랙 내부에서 여러 개의 블레이드 서버를 설치하고, 하나의 샤시(Chassis)에 여러 개의 블레이드 서버를 장착할 수 있습니다. 이러한 구조로 인해, 블레이드형 서버는 공간을 효율적으로 활용할 수 있고, 전력 소비가 적습니다.

    블레이드형 서버는 위 이미지와 유사한 서버를 세로로 넣어 보다 공간을 효율적으로 사용할 수 있는 방식이다.

     

    타워형(Tower) 서버: 

    타워형 서버는 일반적인 컴퓨터와 비슷한 형태의 서버입니다. 일반적으로 작은 규모의 기업이나 개인용으로 사용됩니다. 이러한 서버는 쉽게 설치하고 관리할 수 있으며, 저렴한 가격으로 구입할 수 있습니다. 하지만, 대규모 데이터 처리나 고성능 컴퓨팅에는 적합하지 않습니다.

    각각의 방식은 사용 용도나 환경에 따라 선택됩니다. 예를 들어, 대규모 데이터 센터에서는 공간 절약과 효율적인 관리를 위해 랙 마운트형이나 블레이드형 서버가 사용되고, 소규모 기업이나 개인용으로는 타워형 서버가 많이 사용됩니다.

    728x90
    SMALL

    '네트워크' 카테고리의 다른 글

    클라우드(Cloud)  (0) 2023.07.27
    네트워크 - 백업(Backup)  (0) 2023.07.19
    네트워크 용어  (0) 2023.07.13
    네트워크 - 서버  (0) 2023.07.13
    네트워크 - URL, URI, URN  (0) 2023.07.13

    네트워크 - 서버

    준뜨
    |2023. 7. 13. 23:28

    Table of contents

      서버


      ⭐️ 서버란 무엇인가?

      서버란 다른 컴퓨터나 장치들에게 정보나 서비스를 제공하는 컴퓨터 시스템을 말합니다. 

      서버는 클라이언트가 요청한 정보나 서비스를 처리하고 응답하는 역할을 수행합니다.

      이러한 기능을 통해 서버는 네트워크 환경에서 데이터를 중앙 집중적으로 관리하고,

      다수의 클라이언트들에게 일관된 서비스를 제공할 수 있습니다.

      서버는 다양한 분야에서 사용되며, 예를 들어 웹 서버는 인터넷 상에서 웹 페이지를 제공하는 역할을 하고, 

      데이터베이스 서버는 데이터를 저장하고 관리하는 역할을 합니다. 

      이 외에도 메일 서버, 파일 서버, 애플리케이션 서버 등 다양한 종류의 서버가 있습니다.

      서버는 클라이언트와의 상호작용을 통해 정보나 서비스를 제공하기 때문에, 많은 사용자들이 동시에 접속하면 

      서버의 성능이 저하될 수 있습니다. 따라서 서버는 고성능의 하드웨어와 소프트웨어를 사용하여 안정적으로 운영되어야 하며, 

      시스템 관리자가 적극적으로 관리해야 합니다.


      ⭐️ 서버의 종류와 특징

      웹 서버(Web server): 

      인터넷 상에서 웹 페이지를 제공하는 서버로, 클라이언트가 요청한 웹 페이지를 찾아서 전송해주는 역할을 합니다. 대표적으로 Apache, Nginx 등이 있습니다.

      데이터베이스 서버(Database server)

      데이터베이스에 접근하여 데이터를 저장, 수정, 삭제, 조회하는 서버입니다. 

      대표적으로 MySQL, Oracle, MongoDB 등이 있습니다.

      일 서버(Mail server): 

      이메일을 주고받기 위한 서버로, 이메일 클라이언트에서 보내거나 받은 이메일을 저장하고 전송하는 역할을 합니다. 대표적으로 Postfix, Sendmail 등이 있습니다.

      파일 서버(File server): 

      파일을 공유하기 위한 서버로, 클라이언트에서 파일을 업로드하거나 다운로드할 수 있도록 해줍니다. 대표적으로 Samba, FTP 등이 있습니다.

      애플리케이션 서버(Application server): 

      애플리케이션 실행 환경을 제공하는 서버로, 클라이언트에서 요청한 애플리케이션을 실행시켜 결과를 전송해주는 역할을 합니다. 대표적으로 Tomcat, JBoss 등이 있습니다.

       

      리버스 프록시 서버:

      클라이언트와 서버 간의 통신에서 중개자 역할을 하는 서버입니다. 클라이언트가 요청한 내용을 대신 서버에 전달하고, 서버가 응답한 내용을 클라이언트에게 전달합니다. 이렇게 함으로써 클라이언트와 서버 간의 직접적인 통신을 막고, 보안성을 높일 수 있습니다.


      캐싱 서버:

      이전에 요청한 데이터를 저장해 두고, 같은 요청이 들어오면 저장된 데이터를 제공함으로써 네트워크 대역폭을 줄이고 응답 시간을 단축시키는 서버입니다. 예를 들어, 인기 있는 웹페이지의 경우 매번 새로운 데이터를 요청하는 것보다 캐싱된 데이터를 제공함으로써 빠른 응답을 제공할 수 있습니다.

      728x90
      SMALL

      '네트워크' 카테고리의 다른 글

      클라우드(Cloud)  (0) 2023.07.27
      네트워크 - 백업(Backup)  (0) 2023.07.19
      네트워크 용어  (0) 2023.07.13
      네트워크 - 서버를 설치하는 방법  (0) 2023.07.13
      네트워크 - URL, URI, URN  (0) 2023.07.13

      Table of contents

        web


        ⭐️ URL, URI, URN이 뭔데요?

        네트워크를 공부하기 시작했다면 금방 만나볼 수 있는 친구들.

        우리가 흔히 사용하는 www.naver.com , www.youtube.com   -->URL 이다.

        그래서 URI는 뭐고 URL, URN은 무엇인지 알아보자.

         

        우선, 그림으로 전체적인 형태를 살펴보자.

        URL, URI, URN

        URN과 URL은 URI의 하위 개념이다.

        💫 URI (Uniform Resource Identifier)

        - 인터넷에서 자원을 식별하고 위치를 지정하는 중요한 도구로 사용된다.

        - 웹 브라우저를 통해 웹 페이지에 접근 하거나, API 요청을 보내거나 파일에 접근하는 등의 다양한 용도로 사용된다.

        - URL(데이터가 어디에 있는가?) + URN (데이터의 이름은 무엇인가) = URL(ABC는 어디에 있다) --> 주소

         

        💫 URL (Uniform Resource Locator)

        - 콘텐츠를 구성하는 리소스(자원)의 구체적인 위치를 나타낸다.

        - 콘텐츠가 어디에 있는지를 알려준다.

        - Ex) www.naver.com  / www.youtube.com  --> URL

         

        💫 URN (Uniform Resource Name)

        - 콘텐츠를 구성하는 리소스(자원)의 독립적인 이름이다.

        - 콘텐츠의 리소스가 변하더라도, 이 이름이 변하지 않으면 작동에 문제 없다.

        - 그러나 잘 안쓰인다.

         

        🌙 URI가 가장 상위 개념이기 때문에 URI는 URL이라는 말은 모순이지만

        "URL, URN은 URI다." 라는 말은 맞는 말이다.


        💫 URI 구성요소들

        URI는 다음과 같은 구성 요소와 형식을 가지고 있습니다.

        1. Scheme : URI의 가장 첫 번째 구성 요소로, 리소스에 접근하기 위해 사용되는 프로토콜을 지정한다.

                            예를 들어, "http", "https", "ftp" 등이 해당된다.

         

        2. 인증 정보 (Authentication Information) : 일부 리소스에 접근하기 위해 사용자 이름과 비밀번호 같은

        인증 정보가 필요한 경우, URI에 인증 정보를 포함할 수 있다. 일반적으로 "사용자이름:비밀번호@"의 형식이다.

         

        3. 호스트 (Host) : 리소스가 호스팅되는 서버의 도메인 이름이나 IP 주소를 지정한다. 호스트는 Scheme 다음에 나타나며, 

                                일반적으로 "www.example.com"과 같은 형식이다.

         

        4. 포트(Port) : 리소스에 접근하기 위해 사용되는 포트 번호를 지정한다. 포트 번호는 호스트 주소 다음에 ":" 으로

        구분하여 지정한다. 예를 들어, "www.example.com:8080"과 같은 형식이다.

         

        5. 경로(Path) : 서버에서 식별하려는 리소스의 경로를 지정한다. 경로는 Scheme, 호스트, 포트 다음에 "/"로

        구분하여 지정한다. 예를 들어, "/path/to/resource"와 같은 형식이다.

         

        6. 쿼리 문자열(Query String) : 선택적으로 사용되며, 추가 매개변수를 전달하기 위해 URI에 포함될 수 있다. 

                                                         쿼리 문자열은 경로 다음에 "?"으로 표시되고, "key=value" 형식으로 매개변수가 지정된다.

                                                         여러 매개변수가 있는 경우 "&"로 구분된다. 예를 들어, "/search?q=keyword&page=1"

                                                         HTTP 프로토콜을 알고 있다면, GET 방식에서 사용되는 것을 알 수 있다.

         

        7. 프래그먼트 식별자(Fragment Identifier) : URI 내의 특정 부분이나 위치를 식별하는 데 사용한다. 프래그먼트 식별자는 경로 또는 쿼리 문자열 다음에 "#"으로 표시된다. 예를 들어, "/page#section1"과 같은 형식이다.

        728x90
        SMALL

        '네트워크' 카테고리의 다른 글

        클라우드(Cloud)  (0) 2023.07.27
        네트워크 - 백업(Backup)  (0) 2023.07.19
        네트워크 용어  (0) 2023.07.13
        네트워크 - 서버를 설치하는 방법  (0) 2023.07.13
        네트워크 - 서버  (0) 2023.07.13

        Table of contents

          자바스크립트를 사용하여 HTML 및 CSS를 수정하는 것은 동적인 웹 페이지를 만들고 상호작용성을 추가하는 데 매우 유용합니다.

          아래에서는 자바스크립트를 사용하여 HTML 요소를 조작하고 CSS 스타일을 변경하는 방법에 대해 설명하겠습니다.

           

          1. HTML 요소 선택하기 :

          자바스크립트로 HTML 요소를 수정하기 전에 해당 요소를 선택해야 합니다.

          일반적으로 document.querySelector() 또는 document.getElementById()와 같은 DOM 메서드를 사용하여 선택할 수 있습니다.

          예를 들어, 아이디가 "myElement"인 요소를 선택하는 방법은 다음과 같습니다.

          - const element = document.getElementById("myElement");

           

          2. HTML 내용 수정하기 :

          선택한 HTML 요소의 내용을 변경하려면 innerHTML 속성을 사용할 수 있습니다.

          예를 들어, 선택한 요소의 내용을 다른 내용으로 변경하는 방법은 다음과 같습니다.

          - element.innerHTML = "새로운 내용";

           

          3.CSS 스타일 변경하기

          자바스크립트를 사용하여 선택한 HTML 요소의 CSS 스타일을 변경할 수 있습니다.

          style 속성을 사용하여 스타일 속성을 직접 수정하거나 classList 속성을 사용하여 클래스를 추가하거나 제거할 수 있습니다.

          예를 들어, 선택한 요소의 배경색을 빨간색으로 변경하고 폰트 크기를 20픽셀로 변경하는 방법은 다음과 같습니다.

          - element.style.backgroundColor = "red;

          - element.style.fontSize = "20px";

           

          또는 클래스를 추가하거나 제거하여 CSS 클래스를 적용하거나 제거할 수 있습니다.

          "highlight" 클래스를 추가하는 방법은 다음과 같습니다.

          - element.classList.add("highlight");

           

          "highlight" 클래스를 제거하는 방법은 다음과 같습니다.

          - element.classList.remove("highlight");

           

           

          4. 이벤트 처리하기

          자바스크립트를 사용하여 HTML 요소에 이벤트 처리기를 추가할 수도 있습니다.

          이벤트 처리기를 사용하면 요소에 대한 상호작용 및 동적 동작을 정의할 수 있습니다.

          예를 들어, 버튼 클릭 이벤트에 대한 처리기를 추가하는 방법은 다음과 같습니다.

          const button = document.getElementById("myButton");
          button.addEventListener("click", function() {
            // 버튼이 클릭되었을 때 실행할 코드 작성
          });

          이벤트 처리가 함수 내에서 HTML이나 CSS를 수정하거나 다른 작업을 수행할 수 있습니다.

          728x90
          SMALL

          '자바스크립트' 카테고리의 다른 글

          자바스크립트 기초 (8) - 반복문  (0) 2023.07.09
          자바스크립트 기초 (7)  (0) 2023.07.05
          자바스크립트 기초 (6)  (0) 2023.07.05
          자바스크립트 기초 (5)  (0) 2023.07.05
          자바스크립트 기초 (4)  (0) 2023.07.04

          Table of contents

            ⭐️ 반복문 ?

            반복문이란 말 그대로 반복, 중복되는 코드의 양을 굉장히 효과적으로 줄일 수 있다.

            자바스크립트에는 다양한 종류의 반복문이 있습니다.

            각각의 반복문은 특정한 조건을 만족할 때까지 코드 블록을 반복적으로 실행합니다.

            이를 통해 코드를 단순화하고 반복 작업을 자동화할 수 있습니다.

             

            💫 반복문의 종류

            1. for 반복문 : for 반복문은 초기화식, 조건식, 증감식을 포함한 세 가지 부분으로 구성됩니다.

            초기화식은 반복문의 시작 시점에서 한 번만 실행되며, 조건식은 반복문의 각 반복마다 평가되고 참일 경우 계속하고

            거짓일 경우 반복을 종료합니다. 코드 블록 내의 실행문들이 실행된 후에는 증감식이 실행되어 반복문의 제어 흐름을 결정합니다.

            for 반복문 예시

            2. while 반복문 : while 반복문은 조건식이 참일 동안 코드 블록을 반복적으로 실행합니다.

            while 반복문은 초기화식이나 증감식이 없기 때문에 반복문 안에서 직접 변수를 업데이트 해야 합니다.

            조건식이 거짓이면 반복문은 실행되지 않습니다.

            while 반복문 예시

            3. do-while 반복문 : do-while 반복문은 코드 블록을 실행한 후에 조건식을 평가합니다.

            따라서 최소한 한 번은 코드 블록이 실행됩니다. 그 후 조건식이 참인 경우 반복을 계속하고, 거짓인 경우 반복문을 종료합니다.

            do-while 반복문 예시

            이 외에도 for...of 반복문과 for...in 반복문 등 다양한 반복문 유형이 있습니다.

            for...of 반복문은 배열이나 이터러블 객체를 순회하며

            반복합니다. for...int 반복문은 객체의 열거 가능한 속성들을 반복적으로 실행합니다.

            반복문은 굉장히 유용한 도구이며, 반복 작업을 효율적으로 처리할 수 있도록 도와줍니다.

            하지만 주의해야 할 점이 있습니다. 무한 루프에 빠질 수 있다는 것입니다.

            반복문의 무한 루프는 프로그램의 실행 흐름이 종료되지 않고 영원히 반복되는 상황을 말합니다.

            이는 프로그램의 동작을 멈추거나 정상적으로 제어할 수 없게 만들 수 있습니다.

            무한 루프는 실수로 코드를 작성할 때 발생할 수 있으며, 예상치 못한 결과를 초래할 수 있습니다.

            💫 무한 루프의 위험성과 방지

            무한 루프의 위험성은 다음과 같습니다.

             

            1. 무한한 실행 시간 : 무한 루프는 프로그램을 영원히 실행시키기 때문에, CPU 및 메모리 리소스를 지속적으로 소비하게 됩니다. 이는 시스템에 부하를 줄 뿐만 아니라, 루프 이후의 코드도 실행되지 않게 만들어 버그를 발생시킬 수 있습니다.

             

            2. 시스템 성능 저하 : 무한 루프로 인해 CPU 리소스가 과도하게 사용되면 다른 프로세스나 작업의 실행에 영향을 미칠 수 있습니다. 이는 시스템의 전반적인 성능 저하를 초래할 수 있습니다.

             

            3. 응답 없음 : 무한 루프에 빠지면 프로그램이 더 이상 응답하지 않는 상태가 됩니다. 사용자 입력에 대한 응답이 없고, 프로그램을 종료하거나 제어할 방법이 없게 됩니다. 

            이는 사용자 경험을 심각하게 저하시키고, 시스템을 강제로 종료해야 할 수도 있습니다.

             

            4. 데이터 손실 및 보상 : 무한 루프는 예상치 못한 데이터 손실이나 손상을 초래할 수 있습니다.

            루프 안에서 잘못된 조건 또는 잘못된 변수 조작으로 인해 데이터가 오염될 수 있습니다.

             

            그렇다면 무한 루프를 방지하기 위해 어떻게 해야할까요?

            1. 반복 조건 검사 : 반복문의 조건을 주의 깊게 검사하여 무한 루프에 빠질 가능성을 줄입니다.

            반복 조건이 항상 참이 되지 않도록 확인해야 합니다.

             

            2. 제한된 반복 횟수 설정 : 일정 횟수 이상의 반복을 허용하지 않도록 반복문을 작성합니다.

            이를 통해 무한루프의 위험을 줄일 수 있습니다.

             

            3. 디버깅 및 테스트 : 코드를 디버깅하고 테스트하여 무한루프를 찾고 수정할 수 있습니다. 특히, 대규모 프로젝트의 경우 코드 리뷰와 테스트 과정을 철저히 수행하는 것이 중요합니다.

             

             

            728x90
            SMALL

            '자바스크립트' 카테고리의 다른 글

            자바스크립트 기초 (9) - HTML,CSS 수정하기  (0) 2023.07.09
            자바스크립트 기초 (7)  (0) 2023.07.05
            자바스크립트 기초 (6)  (0) 2023.07.05
            자바스크립트 기초 (5)  (0) 2023.07.05
            자바스크립트 기초 (4)  (0) 2023.07.04

            Table of contents

              ⭐️ 논리 연산자 && , ||

              조건문에 추가적으로 많이 사용되는 것이 논리 연산자이다.

              자바스크립트에서는 논리 연산자를 사용하여 여러 개의 조건을 결합하고,

              조건문이나 논리적인 판단을 수행할 수 있습니다. 주요한 세 가지 논리 연산자는 다음과 같습니다:

               

              1. 논리곱 (AND) 연산자 (&&) : 논리곱 연산자는 두 개의 조건이 모두 참일 때 전체 식을 참으로 평가합니다.

              Ex1) if (조건1 && 조건2) { 

                         // 조건1과 조건2가 모두 참인 경우 실행되는 코드

                      }

              Ex2) if(a===3 && b===2) {}, a가 3이고 b가 2인 경우에만 코드 실행

               

              2. 논리곱 (OR) 연산자 (||) : 논리합 연산자는 두 개의 조건 중 하나 이상이 참일 때 전체 식을 참으로 평가합니다.

              Ex1)  if (조건1 || 조건2) {

                          // 조건1 또는 조건2 중 하나 이상이 참인 경우 실행되는 코드

                      }

              Ex2) if(a===3 || b===2) {}, a가 3이거나, b가 2인 경우에 코드 실행

               

              3. 논리 부정(NOT) 연산자 (!) : 논리 부정 연산자는 주어진 조건을 반대로 만듭니다.

              즉, 참을 거짓으로, 거짓을 참으로 변환합니다.

              Ex1) if (!조건) {

                         // 조건이 거짓인 경우 실행되는 코드

                     }

              Ex2) if(!a===3) {}, a가 3이 아닌 경우에 코드 실행

               

              💫 조건문과 연결되어 실무, 코딩테스트에 많이 사용 !

               

               

              728x90
              SMALL

              Table of contents

                ⭐️ 비교 연산자

                자바스크립트에서는 다양한 비교 연산자를 사용하여 값 또는 표현식을 비교할 수 있습니다.

                비교 연산자를 어떤 상황에서 많이 사용하느냐,

                함수를 사용할 때 특정 조건에서만 호출되어 기능을 제공해줘야 하는 상황이 많이 있습니다.

                그런 상황에서 특정 조건을 설정할 때 비교 연산자를 많이 사용합니다.

                예를 들어, 달력을 통해 DB에서 데이터들을 가져오는 함수를 만든다고 가정했을 때

                사용자가 입력한 날짜가 시스템 시간보다 더 미래의 날짜라면 DB에는 해당하는 데이터가

                없으므로 잘못된 입력을 했다는 알림창을 띄우는 경우가 있습니다. 


                비교 연산자 사용, 조건문

                이렇게 조건문을 통해 비교 연산자 사용 예시를 알아봤습니다.


                💫 비교 연산자에는 어떤 것들이 있을까요?

                 

                1. 동등 비교 (==) : 동등 비교 연산자 ==는 두 개의 값이 같은지 비교합니다. 

                데이터 타입의 동등성을 고려하지 않으며, 필요에 따라 자동으로 타입 변환을 수행합니다.

                예를 들어, 1 == "1"은 true를 반환합니다.

                 

                2. 일치 비교 (===) : 일치 비교 연산자 ===는 값과 데이터 타입 모두를 비교합니다.

                즉, 두 개의 값이 정확히 같은지를 비교합니다.

                예를 들어, 1 === "1"은 false를 반환합니다.

                 

                3. 부등 비교 (!=) : 부등 비교 연산자 !=는 두 개의 값이 다른지 비교합니다.

                동등 비교 연산자의 반대입니다. 

                예를 들어, 1 != 2는 true를 반환합니다.

                 

                4. 불일치 비교 (!==) : 불일치 비교 연산자 !==는 값과 데이터 타입 모두를 비교하여 두 개의 값이 정확히 다른지를

                판단합니다. 일치 비교 연산자의 반대입니다. 예를 들어, 1 !== "1"은 true를 반환합니다.

                 

                5. 대소 비교 (<, >, <=, >=) : 대소 비교 연산자들은 두 개의 값 간의 크기를 비교합니다.

                예를 들어, 5 > 3은 true를 반환합니다.

                 

                비교 연산자는 불리언 (Boolean) 값을 반환합니다. 비교 결과가 참인 경우 true를 반환하고, 그렇지 않은 경우 false를 반환합니다.

                흔히 동등 비교 ==는 느슨한 비교, 일치 비교 ===는 엄격한 비교라고 한다.

                주의할 점은 동등 비교 연산자 ==와 부등 비교 연산자 !=는 자동 타입 변환을 수행하기 때문에 예상치 못한 결과를 초래할 수 있으므로, 가능한한 일치 비교 연산자 ===와 불일치 비교 연산자 !==를 사용하는 것이 좋습니다.


                ⭐️ 원시 타입, 참조 타입

                1) 원시 타입(원시값)

                Number(숫자) : 정수 및 부동 소수점 숫자를 나타냅니다. ex) 42, 3.14

                String(문자열) : 텍스트 데이터를 나타냅니다. ex) "Hello, world!", 'JavaScript'

                Boolean(불리언) : true 또는 false 값을 나타냅니다.

                null : 값이 없음을 나타내는 특별한 값입니다.

                undefined : 값이 할당되지 않은 상태를 나타냅니다.

                Symbol(심볼) : 유일하고 변경 불가능한 값을 나타냅니다.

                - 원시타입의 데이터는 변수에 직접 값을 할당하며, 해당 변수는 값을 보유합니다.

                즉, 원시값은 변수에 복사됩니다. 변수 간의 비교 시, 값 자체를 비교합니다.

                 

                2. 참조 타입(참조값)

                Object(객체) : 여러 개의 속성과 메서드를 포함하는 컨테이너입니다. ex) {name:'John', age:25}

                Array(배열) : 순서가 있는 값들의 리스트입니다. ex) [1,2,3]

                Function(함수) : 코드 블록을 포함하는 재사용 가능한 코드 조각입니다.

                - 참조 타입의 데이터는 값 대신 메모리에 저장되며, 변수는 해당 메모리 위치를 참조합니다.

                따라서 변수 간의 비교 시, 메모리 위치를 비교합니다.

                 

                참조 타입은 객체나 배열 등과 같이 복잡한 데이터를 다룰 수 있으며, 변수에 할당되는 것은 참조(메모리 위치)입니다.

                반면에 원시타입은 간단한 데이터를 나타내고, 변수에는 실제 값이 직접 저장됩니다.


                ⭐️ 조건문

                - 조건문은 특정 조건이 참인지 거짓인지를 평가하여 다른 코드 블록을 실행하거나 건너뛰는 제어 구조입니다.

                조건문은 프로그램의 흐름을 제어하는 데 사용되며, 다양한 상황에 따라 다른 동작을 수행할 수 있습니다.

                 

                자바스크립트에서 사용되는 주요한 조건문은 다음과 같습니다:

                1. if 문 : if문은 주어진 조건이 참인 경우에 코드 블록을 실행합니다. 

                Ex) if(조건) {

                         // 조건이 참인 경우 실행되는 코드

                       }

                 

                2. if...else 문 : if...else 문은 주어진 조건이 참인 경우에는 하나의 코드 블록을 실행하고,

                그렇지 않은 경우에는 다른 코드 블록을 실행합니다.

                Ex) if (조건) {

                         // 조건이 참인 경우 실행되는 코드

                      } else {

                        // 조건이 거짓인 경우 실행되는 코드

                      }

                 

                3. if...else if...else 문 : if...else if...else문은 여러 개의 조건을 순차적으로 평가하고, 첫 번째로 참인 조건에

                해당하는 코드 블록을 실행합니다.

                Ex) if (조건1) {

                         // 조건1이 참인 경우 실행되는 코드

                      } else if (조건2) {

                        // 조건2가 참인 경우 실행되는 코드

                      } else {

                       // 모든 조건이 거짓인 경우 실행되는 코드

                     }

                 

                4. switch 문 : switch 문은 주어진 표현식의 값에 따라 여러 개의 경우(case)를 비교하고

                해당하는 경우에 대한 코드 블록을 실행합니다.

                Ex)  switch (표현식) {

                            case1: // 값1에 해당하는 경우 실행되는 코드 break;

                            case2: // 값2에 해당하는 경우 실행되는 코드 break;

                            default: // 모든 경우에 해당하지 않는 경우 실행되는 코드 break;

                       } 

                break 안해주면 계속 지 혼자 내려가면서 실행됨

                 

                🌟 정리 : 조건문, 비교 연산자 또한 코딩테스트에서 굉장히 많이 쓰이고,

                                  실무에서도 많이 쓰인다 실력 쌓으려면 기초가 상당히 중요한 것 같다..

                728x90
                SMALL

                '자바스크립트' 카테고리의 다른 글

                자바스크립트 기초 (8) - 반복문  (0) 2023.07.09
                자바스크립트 기초 (7)  (0) 2023.07.05
                자바스크립트 기초 (5)  (0) 2023.07.05
                자바스크립트 기초 (4)  (0) 2023.07.04
                자바스크립트 기초 (3)  (0) 2023.07.04

                Table of contents

                  ⭐️ 함수란?

                  함수는 코드 블록을 정의하고 재사용 가능한 기능 단위로 사용하는 데 사용됩니다.

                  함수는 특정 작업을 수행하고 값을 반환할 수 있습니다.

                  함수는 프로그래밍에서 중요한 개념 중 하나이며, 다양한 방식으로 정의하고 호출할 수 있습니다.

                   

                  중복되는 기능을 하나의 메서드로 사용자 정의하여 호출하며 사용이 가능하다는 것

                  함수의 기본 형태는 여러 가지가 있습니다.

                  함수 기본 형태 (1) - 함수 선언문
                  함수의 기본형태 (2) - 함수 표현식

                  이 외에도 화살표 함수, 메서드 방식, 즉시 실행 함수 등 여러 형태가 있지만 주로 사용하는 것들을 예시로 들어봤습니다.

                  자바스크립트는 동적인 기능들을 만들다보니 특정 버튼을 누르면 이벤트가 일어나는

                  onclick이나 mouseover, onload 같은 이벤트 핸들러들을 많이 사용하게 됩니다.

                  클릭 이벤트가 발생했을 시 특정 함수를 호출하여 기능을 제공하는 것

                   

                  💫 자바스크립트에서 요소를 선택하고 조작하는 유용한 메서드 ( document 객체에서 제공되는 메서드들)

                  - document.querySelector - 여러 요소를 선택할 수 있다.

                  Ex) var element = document.querySelector(".my-class"); // 클래스 선택자

                       var element = document.querySelector("#my-id"); // 아이디 선택자

                       var element = document.querySelector("div"); // 요소 선택자 

                       var element = document.querySelector("[name='my-name']"); // 속성 선택자

                   

                  - document.querySelectorAll

                  - document.getElementById - id를 사용하여 문서 내의 요소를 선택합니다.

                  - document.getElementsByClassName - 클래스 이름을 사용하여 문서 내의 요소를 선택합니다.

                  - document.getElementsByTagName - 요소 이름을 사용하여 문서 내의 요소를 선택합니다.

                  - document.getElementsByName -이름 속성을 사용하여 문서 내의 요소를 선택합니다.

                   

                  💫  자바스크립트에서 날짜 관련 함수

                  자바스크립트는 날짜와 시간을 다루기 위한 다양한 내장 함수와 객체를 제공합니다.

                  다음은 주요한 자바스크립트 날짜 함수와 관련된 내용입니다

                  1. Date() 생성자 : Date() 생성자는 현재 날짜와 시간을 나타내는 Date 객체를 생성합니다. Date() 생성자 사용 예시

                  var currentDate = new Date(); // 현재 날짜와 시간을 가지는 Date 객체 생성

                   

                  var specificDate = new Date("2023-07-05); // 특정 날짜와 시간을 가지는 Date 객체 생성

                   

                  var specificDateTime = new Date(2023,6,5,10,30,0);

                   

                  2. getFullYear(), getMonth(), getDate(), getDay() 등 : Date 객체의 메서드 사용하여 날짜와 시간의

                  다양한 부분 가지고 올 수 있다.

                  var date = new Date();

                  var year = date.getFullYear(); // 현재 연도 가져오기
                  var month = date.getMonth(); // 현재 월 (0부터 11까지, 0은 1월을 의미)
                  var day = date.getDate(); // 현재 일 가져오기

                  var dayOfWeek = date.getDay(); // 현재 요일 (0은 일요일을 의미)

                   

                  3. setFullYear(), setMonth(), setDate(), setHours() 등 : Date 객체의 메서드를 사용하여 날짜와 시간의

                  특정 부분을 설정할 수 있다.

                  var date = new Date();

                  date.setFullYear(2023); // 연도 설정
                  date.setMonth(6); // 월 설정 (0부터 11까지)
                  date.setDate(5); // 일 설정

                  date.setHours(10); // 시간 설정

                   

                  4. toLocaleDateString(), toLocaleTimeString() 등 : Date  객체의 메서드를 사용하여 지역화된 날짜와 시간

                  문자열을 가져올 수 있다.

                   

                  var date = new Date();

                  var localDateString = date.toLocaleDateString(); // 지역화된 날짜 문자열 가져오기

                  var localTimeString = date.toLocaleTimeString(); // 지역화된 시간 문자열 가져오기

                   

                  5. getTime(), setTime() : Date 객체의 메서드를 사용하여 날짜와 시간을 밀리초 단위의 숫자 값으로

                  가져오거나 설정할 수 있다.

                   

                  var date = new Date();

                  var timestamp = date.getTime(); // 현재 날짜와 시간의 밀리초 단위의 타임스탬프 가져오기
                  var newDate = new Date(1625468300000); // 밀리초 단위의 타임스탬프로부터 새로운 Date 객체 생성
                  이 외에도 Date 객체는 다양한 기능을 제공하고 있다.

                  날짜와 시간을 비교, 연산, 형식화 등 작업이 가능하다. 

                   

                   

                  728x90
                  SMALL

                  '자바스크립트' 카테고리의 다른 글

                  자바스크립트 기초 (7)  (0) 2023.07.05
                  자바스크립트 기초 (6)  (0) 2023.07.05
                  자바스크립트 기초 (4)  (0) 2023.07.04
                  자바스크립트 기초 (3)  (0) 2023.07.04
                  자바스크립트 기초 (2)  (0) 2023.07.04