여러 개의 값아 댜앙한 구조를 변수에 넣어서 관리하는 법
- 리스트(배열) & 딕셔너리(객체)
리스트(계란바구니)
- 코딩에서 순서는 1,2,3,4가 아님 -> 0부터 시작 0,1,2,3,4
즉, let a_list = [] // 리스트를 선언. 변수 이름은 역시 아무렇게나 가능!
// 또는, let b_list = [1,2,'hey',3] // 로 선언 가능
b_list[1] // 2 를 출력한다는 것은 list 중 2번째 순서인 "1"을 입력한 것이기 때문에
b_list[2] // 'hey'를 출력
// 리스트에 새로운 요소 넣기 (.push)
b_list.push('헤이')를 하면 b_list 맨 뒤에 헤이가 추가됨
b_list // [1, 2, "hey", 3, "헤이"] 를 출력
// 리스트의 길이 구하기(.length)
b_list.length // 5를 출력
딕셔너리 = 전화번호부(키와 벨류 값의 묶음)
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}을 출력
리스트와 딕셔너리의 조합
names = [{'name':'bob','age':20},{'name':'carry','age':38}]
names라는 변수에 리스트라는 형태로 값을 담는 그릇이 생성되어 있고,
그 안에 딕셔너리라는 객체가 0번째와 1번째가 존재한다.
대괄호[]로 선언하는 건 리스트, 중괄호{}로 선언하는 건 딕셔너리
// 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'
딕셔너리의 자주쓰는 또 다른 표현
let b_dict = {'name':'Bob','age':21}
//bob 이름을 꺼낼땐 두 가지 방식으로 깞을 꺼낼 수 있습니다.
b_dict['name']
b_dict.name
둘다 똑같이 딕셔너리의 키값에 접근하여 값 가능
자바스크립트 기본 제공함수(도구)
예를 들면, 나눗셈의 나머지를 구하고 싶은 경우(%)
let a = 20 ,let b = 7
a % b = 6
모든 알파벳을 대문자로 바꾸고 싶은 경우(.toUpperCase())
let myname = 'spartacodingclub'
myname.toUpperCase() // SPARTACODINGCLUB
특정 문자로 문자열을 나누고 싶은 경우 (.split)
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 -> 간단하게 쓸 수도 있다! (함수형 프로그래밍)
특정 문자로 나누고 싶은 경우
let txt = '서울시-마포구-망원동'
let names = txt.split('-'); // ['서울시','마포구','망원동']
특정 문자로 합치고 싶은 경우(.join)
let result = names.join('>'); // '서울시>마포구>망원동' (즉, 문자열 바꾸기!)
함수(도구)를 직접 만드는 방법
// 만들기: function 함수이름(필요한 변수들) {
( 함수안)내릴 명령들을 순차적으로 작성
}
// 사용하기
함수이름(필요한 변수들);
// 두 숫자를 입력받으면 더한 결과를 돌려주는 함수
function sum(num1, num2) {
console.log('num1: ', num1, ', num2: ', num2);
//return 으로 값을 돌려주는, 뱉는 구조로 변수에 값을 전달 할 수도 있습니다.
return num1 + num2;
}
변수 선언방식 let a = function(){
console.log("리터럴 방식 이라고 합니다");
}
a()
sum(3, 5); // 8
sum(4, -1); // 3
let result = sum(10,10)
console.log(result) // 20
'개발일지' 카테고리의 다른 글
(나의개발자일지) 1-6주차(숙제) (0) | 2023.03.05 |
---|---|
(나의개발자일지) 1-5주차 (0) | 2023.03.03 |
(나의개발자일지) 1-4주차 (0) | 2023.03.01 |
(나의개발자일지) 1-2주차 (0) | 2023.02.28 |
(나의개발자일지) 1-1주차 (0) | 2023.02.27 |