전체 글 (143) 썸네일형 리스트형 Template 리터럴 Template 리터럴은 문자열 처리를 위한 템플릿을 제공합니다. Template 리터럴은 역따옴표(` `) 안에 문자열과 표현식을 작성할 수 있습니다 예를 들어 `안녕하세요${표현식}` 과 같이 되어 있다면 해당 코드는 자바스크립트 내에서 => 안녕하세요 (문자로 인식) + ${표현식}은 표현식의 결과를 문자열로 출력이 됩니다. 따라서 표현식에 따라 출력되는 결과가 다르며 문자열과 표현식의 결과를 묶어 하나의 문자열로 표현하는 방식이 바로 Template 리터럴 입니다. Template 리터럴 기본 예제 console.log("1:", `1234ABC가나다라`); // expression 조합이 없기 때문에 template literal 이라고 볼 수는 없음 console.log("2:", `라인1 \.. Spread 연산자 spread 연산자 이터러블 오브젝트의 엘리먼트를 하나씩 분리하여 전개할 수 있습니다. spread 연산자로 인해 분리된 엘리먼트들은 어떤 변수에 할당한다거나, 호출하는 함수의 파라미터 값으로 사용하는 여러가지 응용이 가능합니다. Spread 연산자 문법 spread 연산자는 기본적으 '...' 점 3개를 연속으로 붙인 기호를 사용합니다. 점 3개에 이어서 이터르블 오브젝트를 작성하면 spread 연산자를 통해 엘리먼트를 전개할 수 있습니다. let arrOne = [11,12]; let arrTwo = [21,22]; let spreadObj1 = [...arrOne, ...arrTwo, 31,32]; console.log(spreadObj1); console.log(spreadObj1.length);.. 동기/비동기 ,callback 함수 콜백(callback)함수는 간단히 말하자면 다른 함수가 실행을 끝낸 뒤 실행하는 함수를 의미합니다. 조금더 자세히 말하자면 함수가 다른 함수의 인자가 되어 타 함수 내에서 수행되어지는 것을 말합니다. 함수를 인자로 던진다는 것은 한 함수 내에서 다른 함수를 사용한다를 의미하는데, 그렇다면 외부함수를 정의하고 호출해 쓰는 것과 어떤 차이가 있지? 라는 의문이 들 수 있습니다. 이런 의문을 해소하기 위해선 먼저 동기 / 비동기 방식에 대한 이해가 있어야 합니다. 동기식 동기식은 우리가 기본적으로 익숙한 방식입니다. 동기식은 프로그래밍을 했을 떄 위에서 아래로 절차적으로 수행합니다 함수를 호출한다면 호출한 함수 블럭을 모두 수행한뒤 그 다음 해야할 일을 진행하는 방식이죠, let a = 3; let b = .. 트리거 트리거는 다른 저장 서브프로그램들처럼 고유한 이름을 가지고, 데이터베이스에 저장되며 반복적으로 호출되는 서브프로그램입니다. 하지만 다른 서브프로그램들과는 차이점을 가지고 있는데, 그건바로 트리거는 프로그램에서 직접 호출되어 사용할 수 없습니다. 그렇다면 트리거를 어떻게 실행할까? 에 대한 의문이 생길 수도 있는데, 트리거는 데이터베이스에서 특정 이벤트가 발생할 때마다 데이터베이스에 의해 자동으로 호출됩니다. 예제를 통해 트리거를 생성을 살펴보겠습니다. create or replace trigger tr_emp_ins_upd_validate before insert or update of sal, comm on emp -- 발생시점 referencing old as old new as new -- 참조절 .. PL/SQL 컬렉션 컬랙션은 내부 구성 항목이 모두 동일한 데이터 타입을 가진 유형의 자료 구조입니다 일반적인 프로그래밍 언어를 학습해 보신분들은 알고 있는 개념일테지만 대표적으로 배열과 같은 구조 등이 컬렉션에 해당합니다. 컬렉션의 각 항복은 변수명(인덱스) 와 같은 표현식을 사용하여 접근이 가능합니다 컬렉션 타입의 종류 오라클 PL/SQL에서 지원하는 컬렉션 타입에는 Associative Array(연관 배열), VARRAY(가변 크기 배열), Nested Table (중첩 테이블) 등이 이에 해당합니다 비교항목 / 컬렉션타입 Associative Array VARRAY Nested Table 컬렉션 항목의 개수 미지정 지정 미지정 인덱스 유형 문자열 또는 정수 정수 정수 초기화되지 않은 상태 Empty null nul.. cursor 커서는 DB서버에 저장되어 있는 특정 쿼리를 실행하기 위한 정보를 저장하는 PGA 에 대한 포인터로, 클라이언트 메모리에 존재하는 자료구조 입니다. 지금까지 짧게나마 pl/sql 문법과 얘재들을 살펴보면서 커서라는 개념을 접한적은 없었습니다. 그런데 과연 꼭 커서를 알거나 사용할 필요가 있나 의문이 들 수 있습니다. 결론적으로 말하자면 PL/SQL은 커서 없이는 쿼리를 실행할 수 없습니다. 지금까지 했던 예제들은 따로 커서를 명시해 주지는 않았지만, 묵시적으로 커서가 사용된 것이며 물론 명시적으로도 커서를 사용할 수 있습니다. 묵시적 커서, 명시적 커서 비교항목 묵시적 커서 명시적 커서 커서 선언 없음 있음 복잡도 단순 복잡 커서 제어 불가능 가능 유연성 낮음 높음 사용가능 SQL SELECT, INSE.. Map 오브젝트 Map은 key-value 의 쌍으로 이루어져 있습니다. Map은 해당 키와 value를 개발 단계에서 유용하게 사용하기 좋기 떄문에 유용한 개발을 위해서 Map 오브젝트의 구조와 Map에서 제공하는 함수를 보겠습니다. Map 오브젝트 구조 let newMap = new Map([ /*Map 작성*/ ["key1","value1"], ["key2","value2"], ["key3","value3"] ]); Map은 new Map() 를 통해 인스턴스를 생성합니다 여기서 하나 주의할점은 key:value 형식으로 작성하는 것이 아니라 ["key" ,"value"] 형태로 작성을 한다는 것입니다. 선언 하는 방법에 어려운점은 없을 것입니다. Map을 활용했을 때 좋은 경우에 대해서 알아보면 아래의 경우 정도.. Arrow function ES6(ECMAScript6) 문법 부터 JS 에서는 새로운 함수 생성 방식이 등장했습니다 =>(화살표) 표시를 사용하여 함수를 생성하는 방식인데 화살표의 이름을 따 이를 arrow function(한글로 화살표 함수) 이라고 부릅니다. 화살표 함수는 기존의 function(param) 형식의 코드 형태를 축약했습니다. param => [함수 코드] 와 같은 방식으로 구현하게 되는데 이 함수는 파라미터의 경우에 따라 여러 방식의 함수를 작성 할 수 있으며, 무명/익명 함수라는 성질을 가지고 있기 때문에 화살표 함수를 즉시 적용하는 것이 아니라 호출을 하려면 Function 오브젝트를 할당할 변수를 만들고 이를 변수에 대입해 주어야 합니다 화살표 함수는 function 키워드 보다 간단하게 함수를 만들고 .. 이전 1 ··· 6 7 8 9 10 11 12 ··· 18 다음