2021-08-27 TIL
Facts (사실, 객관)
- 벨로퍼드와 함께하는 모던자바스크립트 1장을 끝냈다.
- week3 과제를 제출했다.
Feelings (느낌, 주관)
- 과제를 어찌 어찌 해서 제출했다. 그렇게 잘 한 거 같지 않아 빨리 피드백을 받고 수정하고 싶다.
- JS 공부를 하고 있다. JS로 코테 준비를 하려 했지만 아직 부족한 부분이 느껴져 공부를 하고 시작하려 한다.
Findings (배운 점)
toBe와 toEqual
- 원시적인 타입(number, boolean, string, null)을 사용한다면 toBe와 toEqual 사이에 큰 차이점이 없다. 하지만 객체의 경우 다르다고 결과가 나온다.
var a = { bar: 'baz' },
b = { foo: a },
c = { foo: a };
b.foo.bar === c.foo.bar
true
b.foo.bar === a.bar
true
c.foo === b.foo
true
// 아래 경우는 false, 서로 다른 메모리에 위치하기 때문
b === c
false // toEqual은 재귀적으로 각 요소들을 확인
toStrictEqual
- 이름 그래도 일반적인 Equal 보다는 훨씬 엄격한 Equal입니다. 기존과는 다르게 특정 요소에 undefined가 나오는 것을 허용하지 않습니다.
const hi = {
add : (num1, num2) => num1 * num2,
makePerson: (name, age) =>({name, age, married:undefined}) }
module.exports = hi;
const fn = require("./hi");
test('사람 만들기 ToEqual', () => {
expect(fn.makePerson("sanghoony", 12)).toEqual({
name:"sanghoony",
age:12}); });
test('사람만들기 ToStrictEqual ', () => {
expect(fn.makePerson("sanghoony", 12)).toStrictEqual({
name:"sanghoony",
age:12
});
});
Affirmation(자기 선언)
- 꾸준히 계속해서 노력하자!!
Author And Source
이 문제에 관하여(2021-08-27 TIL), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@kokoball0/2021-08-27-TIL저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)