직사각형 별찍기 

 

모르는것 투성이 이지만 우선 신기하고 맘에 드는것부터 기억하기 좋을거 같아서 쓴다!

 

1. 직사각형 별찍기

문제를 이해를 못했다.. 별을 5개씩 3줄로 만달라하면 될거를.. 물론 직사각형처럼 보이지만 이런게 왜 코딩문제에 나오는지는 아직도 잘은 모르겠다..

 

.split이 "."이나"@" 이런것만 나눠지는줄 알았는데 " " 이렇게 공백으로 나눌수도 있다

그리고 123 이렇게 붙어있는것도 나눌수 있는데 기억이 안난다 구글링 해봐야겠다

ans, .map col  구글링해봐야함

 

2. 짝수와 홀수

내가 만들진 않았지만 어디서 주워와서 이해는 다 했음!

function solution(num) { return (num % 2 === 0 ? "Even":"Odd") }

%는 나누기를 한후 나머지 이고 /는 몫이다 나는 홀수와 짝수를 구분하기 위해서 num이라는 값을 2로 나눈후 소숫점이 0일때와 아닌때로 구분을 했다 짝수면 0일테고 홀수면.5가 되니까!

 

그리고 삼항연산자라는걸 알게되었는데 이름이 왜인지 독특하고 간지나서 기억이 잘난다 

자바스크립트 삼항 연산자는 참/거짓에 따라 선택적으로 실행되는 조건문이다

조건문 ? 선택문1:선택문2 로 구성이 된다

이때 true일때 선택문 1 false일때 선택문2를 실행한다 

뭔가 쉽고 편리한 함수인거같다

 

==는 숫자열과 문자열여부와 상관없이 값이 같으면 true

===는 숫자열인지 문자열인지 동일해야 true

1; 과 '1';은 같은 1이지만

==는 true로 해석하고

===은 false라고 해석한다

https://velog.io/@daybreak/Javascript-%EC%82%BC%ED%95%AD%EC%97%B0%EC%82%B0%EC%9E%90

 

[Javascript] 삼항연산자

자바스크립트 삼항 연산자는 참/거짓에 따라 선택적으로 실행되는 조건문이다. 상항연산자는 조건문 ? 선택문1:선택문2 로 구성된다. 조건문이 참이면 선택문1을 실행하고, 조건문이 거짓이면

velog.io

3. 가운데 글자 가져오기

slice메소드★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
 s.slice (logic,logic+1) = (이상 미만) 

뭔가 엄청난 내용이었는데 기억이 잘 안난다 구글링 해야한다

 

4. 두 정수의 합

let sum = 0

let max = 0

let min = 0

 이부분이 신기했다 let을 여러개쓸수 있구나..

 

5. 문자열을 정수로 바꾸기

기억이 잘 안난다..

 

6.없는 숫자 더하기

오후에 볼일있어서 잠시 나갔다 오면서 뒤처진부분 따라잡겠다고 저녁 안먹었는데 지금 너무 배고파서 더 기억이 안난다..

 

7. 음양 더하기

이게 코드가 있어야 설명이 잘될거같은데

누산기 (acc) 데이터 레지스터로 처리 결과를 임시로 보유하는 역할

 https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=sunnytop89&logNo=110122289854
현재 값 (cur)
현재 인덱스 (idx)
원본 배열 (src) 이다 

 

8. 평균 구하기

발상의 전환으로 1,2,3,...100을 다 더하면 얼마인지 앎? 5050이다 어떻게 빨리 풀었냐고?

1,2,3...100을

100,99,98...1

이렇게 위아래로 더하고 나누기 2하면 됌! 초딩때 수학시간에 배운 그거임!

이걸 코드로 쓰면 엄청 빠르게 된다 그런데 이게 저 평균구하기 문제였나?뭐지

 

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

let, const를 사용하면 var을 사용할때보다 상당히 이점이 많다
두개의 공통점은 var과는 다르게 변수 재선언이 불가능하다

let, const의 차이점은 변수의 immutable여부이다
let은 변수에 재할당이 가능하지만 const는 변수 재선언,재할당이 모두 불가능하다

let,const가 추가되기 전까지는 var만 사용되었다

https://gist.github.com/LeoHeo/7c2a2a6dbcf80becaaa1e61e90091e5d

 변수(variable)는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름을 말한다.

- 변수란?

가변적인 데이터를 담을 수 있는 대상 혹은 공간

- 변수가 필요하는 이유?

프로그램에서 가독성을 높여주고⬆️ 유지보수에 좋다.
복잡한 코드를 변수 안에 저장하면, 필요할때 변수명을 불러서 데이터 값을 불러낼 수 있다

- 변수를 선언하는 방법

선언 (declare)
 var, const, let

할당

변수에 값을 할당 할 때에는 할당 연산자(=)를 사용한다.

- var 문제점

변수 중복 선언 가능으로 , 예기치 못한 값을 반환

함수 레벨 스코프를 인해 함수 외부에서 선언한 변수는 모두 전역 변수로 된다

변수 선언문 이전에 변수를 참조하면 언제나 undefined를 반환된다.

- 해결방안

let, const 사용

JS 맨 윗줄에 ‘use strict’ 선언 후 사용

https://velog.io/@alicia-mkkim/TlL-4-%EB%B3%80%EC%88%98%EA%B0%80-%ED%95%84%EC%9A%94%ED%95%9C-%EC%9D%B4%EC%9C%A0%EC%99%80-%EC%84%A0%EC%96%B8%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95

리듀서 함수는 네 개의 인자를 가집니다.

누산기 (acc) 데이터 레지스터로 처리 결과를 임시로 보유하는 역할 https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=sunnytop89&logNo=110122289854
현재 값 (cur)
현재 인덱스 (idx)
원본 배열 (src)

reduce 함수는 *반복 가능한 객체(iterable object) 내 각 요소를 연산한 뒤 이전 연산 결과들과 누적해서 반환해 주는 함수입니다.
*반복 가능한 객체(iterable object)란 말 그대로 반복이 가능한 객체로서 요소가 하나의 객체에 여러 개가 들어있고, 한 번에 하나의 요소씩 사용할 수 있는 객체를 말합니다. 대표적으로는 문자열(string), 리스트(list), 딕셔너리(dictionary), 세트(set)가 있습니다.
참고로 파이썬3부터는 reduce가 내장 함수가 아니기 때문에 functools 모듈에서 reduce 함수를 불러와야 합니다.

'이노베이션 자바스크립트 회고' 카테고리의 다른 글

연산자  (0) 2022.08.10
매개변수  (0) 2022.08.10
reduce(), map()  (0) 2022.08.10
자바스크립트 함수, 프로퍼티, 메서드  (0) 2022.08.10
22.08.06  (2) 2022.08.06

+ Recent posts