<head>
////
<script>
function hey(){
alert('안녕!');
}
</script>
////
</head>
<body>
<button onclick = "hey()" type = "button"> 기사 저장 </button>
</body>
위의 ‘기사 저장’ 버튼을 누르면 브라우저가 ‘안녕!’ 이라는 경고 문구를 보여준다.
<head>
////
<script>
function hey(){
alert('안녕!');
}
function hello(){
console.log('hello!');
}
</script>
////
</head>
<body>
<button onclick = "hello()" type = "button"> 기사 저장 </button>
</body>
브라우저에서 f12를 눌러 console tab에 가보면 버튼을 누를 때마다 hello!가 출력이 되는 것을 알 수 있다.
이렇게 콘솔창은 개발자들이 코드를 바로 바로 작성하고 테스트 하는 것을 돕는 도구이다. 새로고침을 하면 콘솔창에 작성한 코드가 사라진다.
let num = 10;
let num2 = 20;
num = 13;
console.log(num,num2);//한번에 여러 값 출력 가능
‘ ; ’ 를 붙이지 않아도 자동으로 끝에 ;를 붙여주지만 예기치 못한 오류가 발생할 수 있기 때문에 붙여주는 습관을 갖자.
let a = 5;
let b = 20;
let name = "Ronaldo"; // '," 둘 다 가능
let name2 = 'Ronaldo';
let a = b; //a = 20 저장, 변수 대입 가능
name +.name2; // RonaldoRonaldo 저장 됨
name + a// Ronaldo5 저장 , 이때 5는 문자열로 바뀐다.
--------bool자료형--------
let x = true;
let y = false;
let a = 4 > 2 // true
!a // false NOT 연산자로 참을 거짓으로, 거짓을 참으로 바꿔준다.
let b = 2!=2 // false
a && b // false AND 연산자로 모두 참이어야 참을 반환한다.
a || b // true OR 연산자로 둘 중 하나만 참이면 참이다.
key 와 value의 쌍으로 이루어진 요소들을 갖고 있다. 딕셔너리의 요소의 값은 키를 이용해서 가져올 수 있고, 각 요소에 순서는 없다.
let aDict = {}; //빈 딕셔너리 선언
let bDict = {'name':'bob','age':21}; // 이와 같이 선언 가능
bDict['name']; // 'bob'출력
bDict['age']; // 21출력
bDict['age'] = 24;
bDict['name'] = "Messi";
bDict;//{'name':'Messi','age':24} 출력된다.
리스트는 숫자, 문자열 등 다른 값들을 여러 개 갖는 자료형
리스트의 각 요소에는 순서가 있고, 순서가 있기 때문에 ‘인덱스(index)’를 이용해서 각 값을 받아올 수 있다.
또한 리스트는 다른 리스트를 요소로 가질 수 있다.
let aList = [];// 빈 리스트 선언
let bList = [1,2,3,'hey'];
bList.push('헤이');
bList // [1,2,3,'hey','헤이']
bList.length // 5를 출력
-------------------------------------
//요소로 다른 리스트를 가지는 리스트
let a_list = [1, 4, 2, [3, 1]]
a_list.length // 4
a_list[3] // [3, 1]
a_list[3][1] // 1
let b_list = [4, 1, 0]
a_list.push(b_list)
a_list // [1, 4, 2, [3, 1], [4, 1, 0]]
a_list.length // 5
// 리스트와 리스트를 이어붙이고 싶다면
let c_list = a_list.concat(b_list)
c_list // [1, 4, 2, [3, 1], [4, 1, 0], 4, 1, 0]
a_list // [1, 4, 2, [3, 1], [4, 1, 0]] 변하지 않음
딕셔너리들을 요소로 갖는 리스트를 만드는 것 또한 가능하다. 이와 같은 자료형은 데이터베이스에서 비슷한 형태의 자료형을 정리 할 때 유용하다.
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)
//name = [{'name':'bob','age':20},{'name':'carry','age':38},{'name':'john','age':7}]
// names[2]['name']의 값은? 'john'
// 만들기
function 함수이름(필요한 변수들) {
내릴 명령들을 순차적으로 작성
}
// 사용하기
함수이름(필요한 변수들)
python과 같이 함수의 반환형의 선언이 필요 없다.
let name = "sungjoo";
name.toUpperCase(); // SUNGJOO 저장
let myemail = bbuchu123@gmail.com
let result = myemail.split('@');
//reuslt = ['bbuchu123','gmail.com']이 저장된 리스트
result[0]; // bbuchu123
result[1]; // gmail.com
let result2 = result[1].split('.');
//result2 = [gmail,com] 저장된 리스트
myemail.split('@')[1].split('.')
//python과 같이 연속적으로 사용이 가능하다.
let txt = '서울시 - 마포구 - 망원동';
let names = txt.split('-');
let result = names.join('+');// '서울시+마포구+망원동' 저장