당근먹는하니
귀엽고 행복해
당근먹는하니
전체 방문자
오늘
어제
  • 분류 전체보기 (274)
    • 다람쥐🐿 (26)
    • C++ 공부빵야 (7)
    • 공부👻 (5)
    • 프론트엔드✏️ (228)
      • 코드캠프 (120)
      • 팀 프로젝트✨ (31)
      • 개인공부 (67)
    • 프론트엔드 - 바닐라js (7)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • ssg
  • 코딩 부트캠프
  • CSS
  • 알고리즘
  • 자바스크립트
  • 회고
  • javascript
  • 팀플
  • typescript
  • emotion
  • 부트캠프
  • graphql
  • 리액트
  • HTML
  • 코드캠프
  • JS
  • javascrpit
  • 공통 컴포넌트
  • algorithm
  • 팀 프로젝트
  • 프론트엔드
  • 배포
  • React-hook-form
  • react
  • next.js
  • 팀프로젝트
  • 코딩
  • 배열
  • refreshtoken
  • 프로그래머스

최근 댓글

최근 글

티스토리

250x250
반응형
hELLO · Designed By 정상우.
당근먹는하니

귀엽고 행복해

프론트엔드✏️/코드캠프

알고리즘 - reduce, 삼항연산자

2022. 5. 18. 00:23
728x90
반응형

  짝수와 홀수

//내가 한 방법
if(num%2 === 0) return "Even";
else return "Odd";

//다른 방법
 return num % 2 ? "Odd" : "Even";

  reduce() 

 reduce() 메서드는 배열의 각 요소에 대해 주어진 리듀서(reducer) 함수를 실행하고,
하나의 결과값을 반환합니다.
const array = [1, 2, 3, 4];

const init = 0;
const sum = array.reduce(previous, current) => previous + current, init);

console.log(sum);// 0 + 1 + 2 + 3 + 4 = 10​

MDN 예제코드

curr이 뭔가 했는데  currentValue였다. 

 

arr.reduce(callback[, initialValue])

callback 함수 : 명시적으로 코드로 호출되어 사용되는 것이 아니라, 즉시 또는 어떤 이벤트가 생겼을 때 다른 코드의 인수로서 넘겨주는 기능을 한다. (함수 안에서 실행되는 또 다른 함수)

 

var sum = [0, 1, 2, 3].reduce(function (accumulator, currentValue) {
  return accumulator + currentValue;
}, 0);
// sum is 6


//위의 코드를 화살표 함수로 작성한 것 
var total = [ 0, 1, 2, 3 ].reduce(
  ( accumulator, currentValue ) => accumulator + currentValue,
  0
);

MDN 예제(배열의 모든 값 합산) 

화살표 함수로 표현하면 계속 헷갈리는 것 같아

인라인, return 생략 가능 

 

  가운데 글자 가져오기

function solution(s) {
    var answer = '';
    let mid = s.length%2;

    if(mid === 0) {
        answer = s[s.length/2-1] + s[s.length/2]; 
    } else {
        mid = Math.floor(s.length/2);
        answer = s[mid];
    }
    return answer;
} //내가 한 것
function solution(s) {
    return s.substr(Math.ceil(s.length / 2) - 1, s.length % 2 === 0 ? 2 : 1);
} //다른 사람의 풀이

  삼항 조건 연산자

조건부 삼항 연산자는 JavaScript에서 세 개의 피연산자를 취할 수 있는 유일한 연산자입니다. 맨 앞에 조건문 들어가고. 그 뒤로 물음표(?)와 조건이 참truthy이라면 실행할 식이 물음표 뒤로 들어갑니다.
바로 뒤로 콜론(:)이 들어가며 조건이 거짓falsy이라면 실행할 식이 마지막에 들어갑니다.
보통 if 명령문의 단축 형태로 쓰입니다.

condition ? exprIfTrue : exprIfFalse
//조건문 ? 참일 때 : 거짓일 때

 

 

728x90
반응형
저작자표시 비영리 동일조건 (새창열림)

'프론트엔드✏️ > 코드캠프' 카테고리의 다른 글

알고리즘 - filter, indexOf, isNaN  (0) 2022.05.19
220517 프론트엔드 부트캠프 9일차 : State, refetch, map  (0) 2022.05.18
ColorHighlight, emotion 폰트 추가  (0) 2022.05.18
220516 프론트엔드 부트캠프 8일차 : container, presenter  (0) 2022.05.17
알고리즘 - 배열, 문자열  (0) 2022.05.16
    '프론트엔드✏️/코드캠프' 카테고리의 다른 글
    • 알고리즘 - filter, indexOf, isNaN
    • 220517 프론트엔드 부트캠프 9일차 : State, refetch, map
    • ColorHighlight, emotion 폰트 추가
    • 220516 프론트엔드 부트캠프 8일차 : container, presenter
    당근먹는하니
    당근먹는하니

    티스토리툴바