전체 글 94

함수의 범위(scope)

전역 변수와 지역 변수 let x = 'global'; function ex() { let x = 'local'; x = 'change'; } ex(); // x를 바꿔본다. alert(x); // 여전히 'global' 위의 코드를 보면 같은 x여도 ex 함수 바깥의 x는 전역변수고, ex 함수 안의 x는 ex 함수의 지역변수이다. 지역 변수는 함수 안에 들어있는 변수를 의미한다. 스코프(Scope) let x = 'global'; function ex() { x = 'change'; } ex(); alert(x); // 'change' 위의 코드에서는 변수가 선언된 것이 아니기 때문에 전역 변수에 접근이 가능하다. 하지만 아래와 같을 때는 이야기가 다르다. let x = 'global'; functi..

javascript 심화 2022.11.11

[#기본] Javascript 대표적인 에러 메시지

1. SyntaxError : 코드를 분석하는 중 잘못된 구문을 만났을 때 나타내는 에러 SyntaxError: Unexpected identifier // 예시 functions def() { // 존재하지 않는 functions를 호출하여 발생 return null; } 2. TypeError : 변수나 매개변수가 유효한 자료형이 아님을 나타내는 에러 TypeError: Cannot read properties of undefined (reading 'value') const obj = {} console.log(obj.key.value); // 선언되지 않은 obj.key 값이 undefined로 호출되어 발생 3. ReferenceError: 존재하지 않는 변수를 참조하였을 때 발생하는 에러 Re..

[#03] [Pre-OnBoarding] if 조건문 / switch 조건문 / 삼항(조건부) 연산자 / 짧은 조건문

조건문을 사용하면 조건에 따라 코드를 실행할 수도 있고 실행하지 않을 수도 있습니다. 이처럼 코드가 실행되는 흐름을 변경하는 것을 조건 분기라고 합니다. if 조건문은 조건에 따라서 코드를 실행하거나 실행하지 않을 때 사용하는 구문입니다. 이때 조건은 앞에서 불 자료형을 의미합니다. 비교 연산자와 논리 연산자를 활용해 조건을 만들고, 이 조건을 사용해 조건 분기를 합니다. if 조건문 if(불 값이 나오는 표현식) { 불 값이 참일 때 실행할 문장 } if 조건문 사용하기 if(273 100') } // 프로그램 종료 alert('종료') if else 조건문 if(불 값이 나오는 표현식) { // ..

javascript 2022.11.09

[#02-3] [Pre-OnBoarding] 자료형 변환

문자열 입력 문자열 자료형은 입력할 때 사용하는 함수는 prompt() 입니다. prompt(메세지 문자열, 기본 입력 문자열); prompt() 함수 매개변수의 역할 const input = prompt('message', '_default') alert(input) Boolean 입력 불 자료형도 값으로 입력 받을 수 있다. 이때는 confirm() 함수를 사용합니다. confirm() 함수는 prompt() 함수와 비슷한 형태로 사용합니다. confirm(메세지 문자열) const input = confirm('수락하시겠습니까?') alert(input) 숫자 자료형으로 변환하기 다른 자료형을 숫자 자료형으로 변환할 때는 Number() 함수를 사용합니다. Number(자료) Number("273..

javascript 2022.11.09

[#02-2] [Pre-OnBoarding] 상수와 변수

변수 변수(variable)는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름 변수 선언 변수 선언은 var, let, const 키워드로 할 수 있으며, ES6에서 const와 let이 추가됨 Javascript 에서 변수 선언은 선언 => 초기화 단계를 거쳐 수행됨 선언 단계: 변수명을 등록하여 자바스크립트 엔진에 변수의 존재를 알린다. 초기화 단계: 값을 저장하기 위한 메모리 공간을 확보하고 암묵적으로 undefined를 할당해 초기화한다. 호이스팅 자바스크립트 엔진은 소스코드를 한 줄씩 순차적으로 실행하기에 앞서, 변수 선언을 포함한 모든 선언문(ex. 변수 선언문, 함수 선언문 등)을 찾아내 먼저 실행한다. 즉, 변수 선언이 어디에 있든 상관없..

javascript 2022.11.09

[#02-1] [Pre-OnBoarding] 자료형

기본 자료형 프로그래밍에서 처리할 수 있는 모든 것을 "자료"라고 부르며, 자료 형태에 따라 나누어 놓은 것을 자료형 이라고 한다. JS에서 가장 기본적이면서도 많이 사용되는 자료형은 숫자(number), 문자열(string), 불(boolean) 자료형이다. 문자열 자료형 "Hello" // "" or '' 감싼것을 '문자열'이라고 한다. "안녕하세요" 큰 따옴표와 작은 따옴표 섞어 사용하기 'this is "string"' // this is "string" "this is 'string'" // this is 'string' 따옴표를 문자 그대로 사용하고 싶다면, 따옴표 앞에 특수한 기능을 수행하는 이스케이프 문자( \ )를 사용한다. "this is \"string\"" // this is "st..

javascript 2022.11.09

[#01] [Pre-OnBoarding] 혼자 공부하는 자바스크립트 / Javascript의 활용

목표: JS의 역사와 JS의 장점을 간단히 이해하고, JS종류와 JS로 할 수 있는 것들이 뭐가 있는지 파악하고 넘어간다. JS의 역사 요약 - Javascript란? 웹 브라우저에서 사용하는 프로그래밍 언어(programing language) 넷스케이프의 브렌던 아이크에 의해 모카(macha)라는 이름으로 만들어짐 곧 라이브스크립트라는 이름으로 개발됨 > 이후 넷스케이프와 썬 마이크로시스템즈와 자바스크립트라는 이름을 붙여서 본격적으로 개발하기 시작 PS. JAVA와 Javascript는 완전히 다른 프로그래밍 언어이다. JS로 할 수 있는 것들 1. 웹 클라이언트 애플리케이션 개발 - 초기 웹: 하이퍼링크로 웹 문서가 연결된 하나의 거대한 책 (정적 웹) - 현재: JS의 등장으로 웹 문서의 내용을 ..

javascript 2022.11.07

[항해99][4주차 ~ 5주차] Flask / AWS

카카오 서비스 문제로 인한 블로그 대체 (임시) 링크첨부 [4주차] [#01] Flask [4주차] [#02] Flask 시작하기 - 서버만들기 [4주차] [#03] Flask 시작하기 - HTML파일 주기 [4주차] [#04] Flask시작하기 - 본격 API 만들기 [4주차] [#05] [화성땅 공동구매] POST/GET [4주차] [#06] [스파르타피디아] POST/GET 링크첨부 [5주차] [#01] 버켓리스트 만들기 [5주차] [#02] 서버 배포하기 (버켓리스트) [5주차] [#03] 서버 세팅하기 [5주차] [#04] Flask 서버 실행해보기 [5주차] [#05] nohup 설정하기 [5주차] [#06] 도메인 연결하기 [5주차] [#07] og 태그 https://velog.io/@sk..

항해99 2022.11.02

[3주차] [#12] 3주차 끝 & 숙제 설명

지니뮤직의 1~50위 곡을 스크래핑 해보세요. 지니뮤직 사이트 https://www.genie.co.kr/chart/top200?ditc=M&rtm=N&ymd=20210701 Q. 이렇게 되면 완성 힌트: 0) 출력 할 때는 print(rank, title, artist) 하면 됩니다! 1) 앞에서 두 글자만 끊기! text[0:2] 를 써보세요! 2) 순위와 곡제목이 깔끔하게 나오지 않을 거예요. 옆에 여백이 있다던가, 다른 글씨도 나온다던가.. 파이썬 내장 함수인 strip()을 잘 연구해보세요! 완성코드 import requests from bs4 import BeautifulSoup headers_url = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) A..

항해99 2022.10.14

[3주차] [#12] Quiz_웹스크래핑 결과 이용하기

1. find, update 연습하기 새 파이썬 파일 dbmovie.py 을 하나 만들어 연습해봅니다. (1) 영화제목 '가버나움'의 평점을 가져오기 Q. 이렇게 되면 완성 완성코드 target_movie = db.movies.find_one({'title':'가버나움'}) print(target_movie['star']) 2. '가버나움'의 평점과 같은 평점의 영화 제목들을 가져오기 Q. 이렇게 되면 완성 완성 코드 target_movie = db.movies.find_one({'title':'가버나움'}) target_star = target_movie['star'] movies = list(db.movies.find({'star':target_star})) for movie in movies: pr..

항해99 2022.10.14

[3주차] [#10] pymongo로 DB조작하기

# mongoDB, You have to install pymongo, dnspython before a start from pymongo import MongoClient client = MongoClient('mongodb+srv://test:sparta@cluster0.nxcyemj.mongodb.net/?retryWrites=true&w=majority') db = client.dbsparta # 저장 - 예시 doc = {'name': 'bobby', 'age': 21} db.users.insert_one(doc) # 한 개 찾기 - 예시 user = db.users.find_one({'name': 'bobby'}) # 여러개 찾기 - 예시 ( _id 값은 제외하고 출력) all_users = ..

항해99 2022.10.14

[3주차] [#09] mongoDB 연결하기

1) mongoDB - Atlas 연결하기 pymongo 라이브러리의 역할 예를 들어, MS Excel를 파이썬으로 조작하려면, 특별한 라이브러리가 필요하지 않겠어요? 마찬가지로, mongoDB 라는 프로그램을 조작하려면, 특별한 라이브러리, pymongo가 필요하답니다! 1. 패키지 설치하기 pymongo, dnspython 2. 다시, mongoDB Atlas 화면에서 Connect your application 클릭 3. pymongo로 조작하기 pymongo 기본 코드 from pymongo import MongoClient client = MongoClient('여기에 URL 입력') db = client.dbsparta 4. 잘 연결됐는지 테스트해보기 doc = { 'name':'bob', '..

항해99 2022.10.14

[3주차] [#08] mongoDB 시작하기

mongoDB - Atlas https://account.mongodb.com/account/register Cloud: MongoDB Cloud account.mongodb.com 1. 다음 화면 체크하고 넘어가기 2. Shared를 클릭하고 넘어가기 3. 싱가포르(서울 있음, 서울로 체크) 로 체크하고, Create Cluster 클릭하기 4. 아래와 같은 화면이 잠시 동안 나온 뒤에 5. 새로고침 후 최종 아래와 같은 화면을 만나면 끝 6. 연결 준비하기 Network Access에서 Allow Access from Anywhere 클릭 → Add IP address 클릭 데이터 베이스 첫번째 페이지에서 좌측 메뉴 Network Access로 이동 mongoDB 모든 IP 허용하기 1. 데이터 베이..

항해99 2022.10.14

[3주차] [#07] DB개괄

1) 들어가기 전에 - DB는 왜 쓰는 것일까? - 우리가 방 정리를 하는 이유는 무엇일까요? 1번: 잘 넣어두기 위해서 / 2번: 나중에 잘 찾기 위해서 정답은 잘 찾기 위해서이다. DB 또한 잘 찾아 뽑아쓰기 위해 있다. - 한가지 더! 교보문고에 가서 책을 찾는 다고 하면? 꽂혀진 방법대로 찾아야 쉽게 찾을 수 있겠죠! 😎 (섹션 → 출판사 → 책 제목) 우리 눈에 보이진 않지만, 사실 DB에는 Index 라는 순서로 데이터들이 정렬되어 있답니다! 2) 들어가기 전에 - DB의 두 가지 종류 Database에는, 크게 두 가지 종류가 있습니다. RDBMS(SQL) 행/열의 생김새가 정해진 엑셀에 데이터를 저장하는 것과 유사합니다. 데이터 50만 개가 적재된 상태에서, 갑자기 중간에 열을 하나 더하기..

항해99 2022.10.14