본문 바로가기
728x90
728x90

분류 전체보기153

자바스크립트 함수 자바스크립트 함수 일급 객체 일급 객체는 생성, 대입, 연산, 인자 또는 반환값으로 사용할 수 있는 대상이다. 일급 객체는 다음과 같은 조건을 만족해야한다. 무명의 리터럴로 표현 변수나 자료 구조에 저장 가능 함수의 매개변수에 전달 가능 반환값으로 사용 가능 자바스크립트의 함수는 일급 객체이고 다른 값들처럼 사용할 수 있다. 변수나 객체, 배열 등에 저장, 인수, 함수의 반환값으로도 사용될 수 있다. 함수와 다른 객체를 구분짓는 특징은 호출을 할 수 있다는 것이다. 함수의 정의 방법 일반적인 프로그래밍 언어의 함수 정의 int add(int x, int y) { return x+y; } 일반적으로 함수명, 파라미터, 반환타입을 통해서 함수를 정의할 것이다. 자바스크립트는 함수를 정의하지 않고 만든다. F.. 2023. 3. 22.
자바스크립트 object 객체 자바스크립트 object 객체 자바스크립트는 객체 기반의 스크립트 언어이며 원시 타입을 제외한 나머지 값들(함수, 배열, 정규표현식)은 모두 객체이다. 자바스크립트 객체는 key와 value로 구성된 프로퍼티들의 집합이다. 정적인 객체 정의와 동적인 객체 정의 C++, C#, Java와 같은 객체지향 언어는 Object라는 개념을 가지고 class로 객체의 형식과 타입을 정의하고 실체화 하여 객체를 사용한다. 하지만 자바스크립트는 객체를 만들고 객체를 정의한다. 그래서 자바스크립트는 동적인 객체정의라고 하고 기존의 언어에서는 정적으로 객체를 정의한다. 객체 생성 방법 객체 리터럴 var person = { name : "Gildong", age : 20, }; Object 생성자 함수 var person.. 2023. 3. 21.
next 환경변수 undefined 오류 문제 상황 aws s3 이미지 업로드에 필요한 s3 config 설정을 하는 중에 각각의 설정 값에 직접 문자열을 넣었을 때는 정상적으로 파일 업로드가 되었으나 .env 환경변수를 사용했을 때 undefined 에러가 발생하면서 값을 불러 올 수 없었다. 잘못된 코드 .env에서 값을 설정하고 config에서 process.env로 접근하는 부분은 문제가 없어 보였다. .env파일의 경로도 확인 해보았지만 모두 문제가 없었다. 개선한 코드 검색을 해본 결과 nextJS 에서는 NEXT_PUBLIC_ 이라는 접두사를 사용하지 않는 한 클라이언트 코드에서 환경 변수에 액세스 하는 것을 허용 하지 않는다는 것을 확인했다. NEXT_PUBLIC_ 접두사를 붙여서 정상적으로 파일이 업로드 되었다. 2023. 3. 20.
자바스크립트 Array 객체 배열 리터럴 자바스크립트는 객체 기반의 스크립트 언어이며 자바스크립트를 이루고 있는 거의 모든 것이 객체이다. 원시 타입을 제외한 나머지 값들(함수, 배열, 정규 표현식 등) 모두 객체이다. 배열 리터럴은 객체 리터럴과 달리 프로퍼티명이 없고 각 요소의 값만 존재한다. 두 객체의 근본적인 차이는 배열 리터럴의 프로토타입 객체는 Array.prototype이고 객체 리터럴의 프로토타입 객체는 Object.prototype 이다. 대부분의 프로그래밍 언어는 배열의 요소가 모두 같은 데이터 타입 이어야 하지만 자바스크립트는 어떤 데이터 타입의 조합도 가능하다. const array = ['word', 10, true, undefined] 배열의 생성 배열은 배열 리터럴 방식으로 생성하는데 이는 결국 내장 함수.. 2023. 3. 19.
728x90
728x90