
JavaScript 의 개념 응용 문제를 풀어보며 여러 생각을 해보는 시간이라고 한다.
오늘은 총 10개의 챕터 중에 3개 정도 문제를 풀고 생각해보는 시간을 가져 보려고 한다.
01_Introduction.js
02_Types-part1.js
03_LetConst.js
04_Scope.js
05_ArrowFunction.js
06_Types-part2.js
07_Array.js
08_Object.js
09_SpreadSyntax.js
10_Destructuring.js
01_Introduction.js
02_Types-part1.js
03_LetConst.js
expect는 "기대하다"라는 뜻을 가진 동사입니다.
자바스크립트에서 expect는 테스트 프레임워크인 Jasmine과 같은 라이브러리에서 사용됩니다.
expect를 사용하여 테스트 코드에서 기대되는 결과를 명시하고 테스트를 수행합니다.
예를 들어, 함수의 반환 값을 기대하는 테스트 코드를 작성할 때, expect를 사용하여 해당 값을 명시하고 toBe 메소드를 사용하여 해당 값을 검증할 수 있습니다.
// add 함수 정의
function add(a, b) {
return a + b;
}
// add 함수 테스트
describe("add function", function() {
it("should return 3 when passed 1 and 2 as arguments", function() {
expect(add(1, 2)).toBe(3);
});
});
위 예제에서 expect(add(1, 2)).toBe(3); 코드는 add 함수를 호출하여 반환된 값이 3인지 검증합니다. 만약 add 함수가 3이 아닌 다른 값을 반환하면 해당 테스트는 실패합니다.
Jasmine 라이브러리의 expect는 다양한 메소드를 제공합니다. 일반적으로 사용되는 메소드는 toBe, toEqual, toBeDefined, toBeUndefined, toBeNull, toBeTruthy, toBeFalsy, toContain, toMatch 등이 있습니다. 이러한 메소드를 사용하여 다양한 검증을 수행할 수 있습니다.
코드스테이츠에서 제공하는 코드를 올리지는 못하겠지만 비슷한 예제로 생각해봐야겠다.
it("'테스트하는 값'을 '기대하는 값'과 비교한 결과가 참 인지 확인합니다.", function () {
let actualValue = 3 + 3;
let expectedValue = 3 + 3;
expect(actualValue === expectedValue).to.be.true;
});

JavaScript에서 데이터 타입(data type)은 변수가 저장할 수 있는 값의 유형을 나타냅니다. JavaScript는 동적 타입(dynamic type) 언어이므로 변수의 데이터 타입은 변수에 저장된 값에 따라 자동으로 결정됩니다.
JavaScript에서는 아래와 같은 다양한 데이터 타입이 있습니다.
1) 원시 데이터 타입(Primitive data type)
2) 참조(reference) 데이터 타입
JavaScript에서는 typeof 연산자를 사용하여 변수의 데이터 타입을 확인할 수 있습니다.
예를 들어, typeof 1은 "number"를, typeof "hello"는 "string"을, typeof true는 "boolean"을 반환합니다.
typeof null은 "object"를 반환하는데, 이는 자바스크립트의 오래된 버그로 인해 발생한 것으로 null은 사실 원시 데이터 타입입니다.
JavaScript에서는 데이터 타입을 변환하는 다양한 메소드를 제공합니다.
예를 들어,
const는 JavaScript에서 변수 선언에 사용되는 키워드 중 하나입니다.
const로 선언된 변수는 상수(변경 불가능한 값)로 취급됩니다.
즉, 한 번 값을 할당하면 다른 값을 할당할 수 없습니다.
const로 선언된 변수는 반드시 선언과 동시에 초기화되어야 합니다. 이후에 값을 변경하려고 하면 에러가 발생합니다. const로 선언된 객체나 배열의 내부 값은 변경될 수 있지만, 객체나 배열 자체는 다른 객체나 배열로 대체될 수 없습니다.
const는 let과 함께 ES6에서 추가된 변수 선언 키워드 중 하나입니다. 이전에는 var만 사용할 수 있었습니다. var와는 달리, const와 let은 블록 유효 범위(block scope)를 갖습니다. 즉, 중괄호({}) 안에서 선언된 변수는 그 범위 안에서만 유효합니다.
다음은 const로 변수를 선언하는 예시입니다.
const pi = 3.14;
pi = 3.14159; // 에러 발생
const myObject = {name: "John", age: 30};
myObject.age = 31; // 가능
myObject = {name: "Jane", age: 29}; // 에러 발생
위의 예시에서 pi는 상수로 선언되어 있으므로 값을 변경할 수 없습니다. 그러나 myObject는 상수로 선언되어 있지만, 객체 내부의 값을 변경하는 것은 가능합니다. 하지만 myObject를 다른 객체로 대체하는 것은 불가능합니다.
| [코드스테이츠 FE 45기] _2023.05.02 _ Day 16 (0) | 2023.05.02 |
|---|---|
| [코드스테이츠 FE 45기] _2023.05.01 _ Day 15 (0) | 2023.05.01 |
| [코드스테이츠 FE 45기] _2023.04.27 _ Day 13 (0) | 2023.04.27 |
| [코드스테이츠 FE 45기] _2023.04.26 _ Day 12 (0) | 2023.04.26 |
| [코드스테이츠 FE 45기] _2023.04.25 _ Day 11 (0) | 2023.04.25 |