본문 바로가기
IT/App

[APP-2] JavaScript 기초

by treedoctor 2023. 1. 10.
728x90

1. 기초문법
   1) 리스트(배열) - 순서를 가지는 배열(Array)

let a_list = []  // 리스트를 선언. 변수 이름은 역시 아무렇게나 가능!
// 또는,
let b_list = [1,2,'hey',3] // 로 선언 가능

b_list[1] // 2 를 출력
b_list[2] // 'hey'를 출력

// 리스트에 요소 넣기
b_list.push('헤이')
b_list // [1, 2, "hey", 3, "헤이"] 를 출력

// 리스트의 길이 구하기
b_list.length // 5를 출력

2) 딕셔너리(객체) - Key-Value쌍의 묶음

let a_dict = {}  // 딕셔너리 선언. 변수 이름은 역시 아무렇게나 가능!
// 또는,
let b_dict = {'name':'Bob','age':21} // 로 선언 가능

b_dict['name'] // 'Bob'을 출력
b_dict['age'] // 21을 출력

b_dict['height'] = 180 // 딕셔너리에 키:밸류 넣기
b_dict // {name: "Bob", age: 21, height: 180}을 출력

3) 리스트와 딕셔너리 조합

names = [{'name':'bob','age':20},{'name':'carry','age':38}]

// names[0]['name']의 값은? 'bob'
// names[1]['name']의 값은? 'carry'

new_name = {'name':'john','age':7}
names.push(new_name)

// names의 값은? [{'name':'bob','age':20},{'name':'carry','age':38},{'name':'john','age':7}]
// names[2]['name']의 값은? 'john'

4) 또 다른 딕셔너리의 표현

let b_dict = {'name':'Bob','age':21}

//bob 이름을 꺼낼땐 두 가지 방식으로 깞을 꺼낼 수 있습니다.
b_dict['name']
b_dict.name

5) JSON - 리스트와 딕셔너리가 복합적으로 존재하는 데이터 구조

/**
서울시에서 제공하는 Open API JSON구조로
큰 딕셔너리 값 안에 딕셔너리 또는 리스트가 얽혀있는 모습

RealtimeCityAir라는 키 값에 딕셔너리 형 value가 들어가있고, 
그 안에 row라는 키 값에는 리스트형 value가 들어있음.
**/

{
"RealtimeCityAir": {
"list_total_count": 25,
"RESULT": {
"CODE": "INFO-000",
"MESSAGE": "정상 처리되었습니다"
},
"row": [
{
"MSRDT": "202301101600",
"MSRRGN_NM": "도심권",
"MSRSTE_NM": "중구",
"PM10": 0.0,
"PM25": 0.0,
"O3": 0.0,
"NO2": 0.0,
"CO": 0.0,
"SO2": 0.0,
"IDEX_NM": "",
"IDEX_MVL": 0.0,
"ARPLT_MAIN": ""
},
{
"MSRDT": "202301101600",
"MSRRGN_NM": "도심권",
"MSRSTE_NM": "종로구",
"PM10": 62.0,
"PM25": 38.0,
"O3": 0.013,
"NO2": 0.045,
"CO": 0.7,
"SO2": 0.004,
"IDEX_NM": "보통",
"IDEX_MVL": 85.0,
"ARPLT_MAIN": "PM-2.5"
},
:
:
더보기

크롬 익스텐션의 JSONView를 설치하여 JSON구조를 보기좋게 할수있다.
https://chrome.google.com/webstore/detail/jsonview/gmegofmjomhknnokphhckolhcffdaihd?hl=ko

6) 기본제공 함수

// 나눗셈의 나머지
let a = 20
let b = 7
a % b = 6


// 소문자를 대문자로 치환
let myname = 'spartacodingclub'
myname.toUpperCase() // SPARTACODINGCLUB



// 특정 문자열로 나누기1
let myemail = 'sparta@gmail.com'
let result = myemail.split('@') // ['sparta','gmail.com']

result[0] // sparta
result[1] // gmail.com

let result2 = result[1].split('.') // ['gmail','com']
result2[0] // gmail -> 우리가 알고 싶었던 것!
result2[1] // com

myemail.split('@')[1].split('.')[0] // gmail -> 간단하게 쓸 수도 있다!



// 특정 문자열로 나누기2
let txt = '서울시-마포구-망원동'
let names = txt.split('-'); // ['서울시','마포구','망원동'



// 특정 문자로 합치기
let result = names.join('>'); // '서울시>마포구>망원동' (즉, 문자열 바꾸기!)

 

728x90

'IT > App' 카테고리의 다른 글

최종 배포할 앱.  (0) 2023.01.16
[APP-3] JavaScript - 앱 개발시 자주 쓰이는 java script  (0) 2023.01.10
[APP-1] 개발환경 준비하기  (0) 2023.01.10