name="Mike";
age=39;
alert(age);
console.log(age);
//변수명이 유일하다는 의미가 없어서 위험함
let name="Mike";
let name="google";
//이미 선언되어있어서 let을 여러 개 할 수 없음
//let을 선언하고 값을 바꿀 수 있음
const age=30;
//const는 상수. 대문자로 알리는 게 좋음
console.log(age);
const name="Mike";
const age=30;
//백틱은 문자열 내부 표헌할떄
const message=`my name is ${name}`;
//이런 식으로 씀. 만약 따옴표로 쓰면 그대로 출력됨
const message1=`나는 ${30+1}살 입니다.`;
console.log(message1);
//boolean은 논리적인 요소 나타냄
const a=true;
const b=false;
const name="Mike";
const age=30;
console.log(name==='Mike');
//여기서 ===나 ==나 같나봄.
console.log(age>40);
null, undefined
let user=null;
//typeof연산자
const name="Mike";
//숫자형
console.log(typeof 3);
//문자형
console.log(typeof name);
//불린형
console.log(typeof true);
//문자형
console.log(typeof "xxx");
//객체형(object)
console.log(typeof null);
console.log(typeof undefined);
//하지만 null은 객체가 아님. js에서 수정안했다함
//대화상자 3가지
//alert알려줌, pronmpt 입력받음, confirm 확인받음
const name=prompt("이름을 입력하세요");
alert("환영합니다. "+name+"님");
//백틱을 배웠으니 응용해보면,
const name=prompt("이름을 입력하세요");
alert(`환영합니다 ${name}님`);
//첫번째값은 문구, 두번째값은 디폴트
const name=prompt("예약일을 입력해주세요", "2022-02-");
//확인ture, 취소는 false
const isAdult=confirm("당신은 사람입니까?");
console.log(isAdult);
//단점, 창이 떠있는 동안 스크립트 일시정지됨. 스타일링 불가능,
//형변환
//왜 필요할까? 문자와 문자 더하면 문자열 자료형이 다를때 사용.
const mathScore=prompt("수학 몇점?");
const engScore=prompt("영어 몇점?");
const result=mathScore+engScore/2;
console.log(result);
//이상한 값이 나옴
//prompt는 문자형으로 받음 숫자를 입력하면 문자로 인식함
const mathS=90;
const engS=80;
console.log(mathS+engS);
//여러가지 한번에 찍을 수도 있음
console.log(
String(3),
String(true),
String(false),
String(null),
String(undefined)
)
console.log(
Number(true),
Number(false)
)
//false=0, 빈문자열, null, undefined, NaN 외에는 ture