해나아부지 개발일지

알쓸신잡(1) 본문

Developers/JavaScript

알쓸신잡(1)

__APPA 2020. 4. 28. 00:54

1) Array.isarray(x) // object 와 array를 구분할 수 있는 method

typeof [] // 'object'
typeof {} // 'object'

//배열과 객체 모두 type check 결과 object가 나오기 때문에

Array.isArray(something) // 으로 배열인지 아닌지 구분할 수 있다

   

2)빈 배열은 배열의 .length === 0 일 때 확인할 수 있다 

[] === [] // false
// 각 배열이 갖는 주소값이 다르기 때문에 비교를 할 수 없다
//배열이 비었는지 확인하고 싶다면?

array.length === 0 // 배열의 길이가 0이라면 빈 배열임을 확인할 수가 있다

3)Method의 return값을 잘 확인해야 한다.
- unshift는 리턴값이 length property이므로 바로 return할 때와 하지 않을 때 값 차이가 난다

array = [1, 2]

array.unshift(3) 
retrun array // [3,1,2]
---------------------------------------------------------------------------------------

return array.unshift(3) // 3 -> 배열의 length 값

- conat은 새로운 배열을 return한다(concat new array instance )

4)함수형 코드 쓰는 이유 - 함수는 테스트 하기 쉽다

 5) forEach() 

//인자를 함수로 넘긴다  -> 콜백 
let callback = function name(element, index, original) { //name 생략 가능 -> 익명함수
	
} 

6) delete는 연산자여서 객체[key] 과 반드시 필요

obj = {
	a: 1,
    b: 2,
    c: 3
    }
    let remove = obj['a']
delete remove // 될 것 같지만 안됨!
delete obj['a'] // delete는 객체와 키값을 반드시 취함

7)객체의 key와 value 동시에 추가하는 방법 

// 키와 값을 동시에 추가하고 싶다면 아래와 같은 형식을 사용하자
obj[propertyname] = value 



'Developers > JavaScript' 카테고리의 다른 글

map vs filter vs reduce  (0) 2020.04.29
Mutable vs Immutable  (0) 2020.04.28
1-4. 배열(Array)  (0) 2020.04.25
1-3.함수(functions)  (0) 2020.04.16
1-2. 조건문(if...else)  (0) 2020.04.12
Comments