우리가 만드는 "기능"
여지껏 사용한 기능은 기존에 만들어져있던 것들.
function hello(){
alert("안녕하세요")
}
경고창을 띄우는 기능을 만든 것.
함수란?
어떤 데이터를 입력받아 결과데이터를 출력한다.
입력데이터는 소괄호( ) 에 입력하고,
결과데이터는 return 뒤에 들어간다.
function 함수명 ( 매개변수(선택) ) {
함수 호출했을 때 실행할 코드(데이터반환은 선택)
}
매개변수 있으면 실행할 코드에도 매개변수 있어야함
function hello(매개변수){
alert(매개변수 + "안녕하세요")
}
function hello(name){
alert( name + "님 안녕하세요")
}
함수선언식 / 함수표현식 / 화살표함수
함수선언식
function hello(){
alert("안녕하세요")
}
함수표현식
let hello = function(){ // 이 형태는 함수 이름 없음=익명함수
alert("안녕하세요")
}
화살표함수 // 함수표현식과 비슷한 모습.
let hello = () => {
alert("안녕하세요")
}
작성방법은 달라도 실행방법은 동일 hello()
자주 사용되는 함수를 JS에 내장하여 편리하게 이용할수있게함
시간지연함수
setTimeout(기능, 초)
시간반복함수
setInterval(기능, 초)
예)
const boom = function(){
console.log("펑")
}
// undefined
setTimeout(boom, 3000)
3초뒤...
// 펑
10초 타이머
let time = 10
undefined
setInterval(function() {
if(time >=0) {
console.log(time);
time = time - 1; // time--
}
}, 1000)
타이머 문제
setInterval(function(){
if(time >= 0){
const min = String(Math.floor(time / 60)).padStart(2, "0")
const sec = String(time % 60).padStart(2, "0")
console.log(`${min} : ${sec}`)
time--
}
}, 1000)
배열의 마지막 글자 = length - 1
ex)
const lastword = word[word.length - 1]
placeholder="어쩌구"
에는 빈칸 하나라도 있으면 안나타남
즉,
"" 는 " " 와 다르다는 것.