πŸ“– [JavaScript] λ‚˜λ¨Έμ§€ λ§€κ°œλ³€μˆ˜

혱·2022λ…„ 9μ›” 9일

JavaScript_Intermediate

λͺ©λ‘ 보기
10/19

πŸ”Ž 인수 전달: 개수λ₯Ό 맞좜 ν•„μš”λŠ” μ—†μŒ!

function showName(name){
  console.log(name);
}

showName('Mike', 'Tom'); //Mike만 찍힘
showName() //undefined

πŸ“Œ arguments

ν•¨μˆ˜λ‘œ λ„˜μ–΄ 온 λͺ¨λ“  μΈμˆ˜μ— μ ‘κ·Ό
ν•¨μˆ˜ λ‚΄μ—μ„œ 이용 κ°€λŠ₯ν•œ μ§€μ—­ λ³€μˆ˜
length/index
Array ν˜•νƒœμ˜ 객체
λ°°μ—΄μ˜ λ‚΄μž₯ λ©”μ„œλ“œ μ—†μŒ (forEach, map)

function showName(name){
  console.log(arguments.length);
  console.log(arguments[0]);
  console.log(arguments[1]);
}
showName('Mike', 'Tom'); //2, 'Mike', 'Tom'

πŸ“Œ λ‚˜λ¨Έμ§€ λ§€κ°œλ³€μˆ˜: ...

μ •ν•΄μ§€μ§€ μ•Šμ€ 개수의 λ§€κ°œλ³€μˆ˜λ₯Ό λ°°μ—΄λ‘œ λ‚˜μ˜€λ„λ‘ 함.
λ°°μ—΄μ˜ methods도 μ‚¬μš©ν•  수 있음
항상 λ§ˆμ§€λ§‰μ— λ‚˜μ™€μ•Ό 함

function showName(...nameS){
  console.log(names);
}

showName(); //[] 아무것도 μ „λ‹¬ν•˜μ§€ μ•ŠμœΌλ©΄ λΉˆλ°°μ—΄μ΄ λ‚˜νƒ€λ‚¨
showName('Mike', 'Tom'); //['Mike', 'Tom']

πŸ”— μ‹€ν–‰ μ˜ˆμ‹œ

βœ”οΈ 1. λ‚˜λ¨Έμ§€ λ§€κ°œλ³€μˆ˜, 전달받은 λͺ¨λ“  수λ₯Ό 더해야함

function add(...numbers){
  numbers.forEach((num) => (result += num));
  console.log(result);
}

function add(...numbers){
  let result = numbers.reduce((prev, cur) => (prev +cur);
  console.log(result);
}

add(1,2,3); //6
add(1,2,3,4,5,6,7,8,9,10) //55

βœ”οΈ 2. user 객체λ₯Ό λ§Œλ“€μ–΄ μ£ΌλŠ” μƒμ„±μž ν•¨μˆ˜

function User(name, age, ...skills){
  this.name = name;
  this.age = age;
  this.skills = skills;
}

const user1 = new User('Mike', 30, 'html', 'css');
const user2 = new User('Tom', 20, 'js', 'react');
const user3 = new User('Jane', 10, 'english');

console.log(user2); //{name:"Tom", age:20, skills: ['js', 'react']
profile
new blog: https://hae0-02ni.tistory.com/

0개의 λŒ“κΈ€