현재 폴더에 package.json 추가된다.
npm init –y
개발용 의존성 패키지 설치 : 개발할 때만 필요하다. --save-dev 대신에 -D
npm install parcel-bundler –D
원하는 버전을 명시하여 버전 설치
npm install lodash@4.17.20
최신버전의 정보를 보여준다.
npm info lodash
package.json 이 있는 곳에서 명령어를 입력해야 한다.
npm update lodash
package.json 파일이 있으면 node_module 을 설치할 수 있다.
package.josn 파일과 package-lock.json 파일을 삭제되지 않게 조심해야 한다.
npm install
{
"name": "ex01",
"version": "1.0.0",
"scripts": {
"dev": "parcel index.html",
"build": "parcel build index.html"
},
"keywords": [],
"author": "",
"license": "ISC",
"description": "",
"dependencies": {
"lodash": "^4.17.21"
},
"type": "module"
}
|
Cannot use import statement outside a module 와 같은 에러 메시지가 발생하면
위와 같이 package.json에 "type": "module" 을 추가해주면 해결된다.
형변환(Type conversion)
=== 일치연산자
== 동등연산자 : 형변환이 발생한다.
객체는 참조타입(reference type)이기 때문에 할당 연산자 (=) 를 사용하면 메모리 주소값이 복사된다.
Spread operator 를 사용하여 의도적으로 얕은 복사(Shallow Copy)를 할 수 있다.
깊은 복사는 lodash 모듈을 설치해서 이용하면 편리하다.
loash 에서 제공하는 얕은 복사 함수는 _.clone(object) 이다.
loash 에서 제공하는 깊은 복사 함수는 _.cloneDeep(object) 이다.
import _ from 'lodash';
const user = {
name: '홍길동',
age : 25,
emails: ['link2me@test.com']
}
const copyUser = _.cloneDeep(user);
console.log(copyUser === user); // 메모리 주소가 같은가?
user.age = 30;
user.emails.push('jsk005@test.com');
console.log('user', user);
console.log('copyUser', copyUser);
|
결과
'React > morden javascript' 카테고리의 다른 글
카카오 맵 장소 검색 구현 방법 (0) | 2022.12.19 |
---|---|
[Javascript] 정규표현식 (0) | 2022.10.08 |
[ES6] Spread 연산자 (0) | 2022.10.02 |
자바스크립트 Object (0) | 2022.06.11 |
자바스크립트 호이스팅(Hoisting) (0) | 2022.06.10 |