[JS] Syntax | 20. 파일 입출력
·
Language/JavaScript
외부 파일안의 내용을 읽거나 쓰는 방법입니다. 크게 일반적인 경우와 큰 파일을 다루는 경우로 나누어 정리합니다. 일반적인 경우큰 파일을 다루는 경우읽기readFile( )createReadStream ( )쓰기writeFile( )createWriteStream ( )readFile( )주로 작은 파일(.json, .config 파일 등)을 읽을 때 사용합니다.readFile( )은 fs 모듈을 통해 사용할 수 있습니다.const fs = require('fs');const data = fs.readFile('file.txt', 'utf-8');기본적으로 비동기 함수이기 때문에, 후작업을 위해서는 콜백 함수를 사용하거나 async-await으로 해소해야 합니다.// 1. 콜백 함수const fs = r..
[JS] Syntax | 19. require & import - 외부 파일 불러오기
·
Language/JavaScript
JavaScript에서 외부 파일을 불러오는 방법은 JavaScript의 유형에 따라 두 가지로 나뉩니다.1. require - CommonJS파일을 불러올 때// 1const fs = require('fs');// 2const express = require('express');// 3const { pathToFileURL } = require("url");파일을 내보낼 때// 1module.exports = greet;// 2exports.greet = greet;2. import - ES파일을 불러올 때// 1import fs from 'node:fs';// 2import express from 'express';// 3import { pathToFileURL } from 'node:url'; 파일..
[Python] Library | 06. OS
·
Language/Python
os는 현재 운영체제에서의 파일 시스템(파일, 경로 등)을 관리하는 라이브러리입니다. 외부 라이브러리에 접근하거나, 외부 데이터 파일을 불러오는 등의 작업에 필수적입니다.os.path파일시스템의 경로에 대한 정보를 다룹니다.메소드기능입력값반환값abspath (dir)상대경로를 절대경로로 변환dir : 경로 dirname ( __file__ )현재 스크립트 파일의 경로 반환__file__ : 현재 실행중인 Python 파일의 경로경로exists (dir)존재하는 경로인지 확인dir : 문자열booleanisdir (dir)경로인지 확인dir : 문자열booleanisfile (dir)파일인지 확인dir : 문자열booleanjoin (dir_a, dir_b)두 경로를 합침dir_a : 경로 adir_b :..
[JS] Syntax | 18. 배열 메소드 정리
·
Language/JavaScript
JavaScript의 배열 메소드들을 정리하였습니다. 각 매개변수들은 필수가 아니며, 선택적으로 사용할 수 있습니다.메소드기능형식매개변수forEach *배열의 각 요소마다 동작을 실행합니다..forEach( (item, index, arr) => { ... } ) { ... } : 요소별 동작item : 개별 항목index : 색인arr : 현재 배열map *배열의 각 요소마다 동작을 실행합니다.각 요소마다 반환한 값을 모아 하나의 배열로 반환합니다..map( (item, index, arr) => { ... } ){ ... } : 요소별 동작item : 개별 항목index : 색인 arr : 현재 배열filter배열의 각 요소마다 조건에 만족하는 요소들만 모아 배열로 반환합니다..filter( (ite..
[JS] Syntax | 17. 예외처리
·
Language/JavaScript
JavaScript에서도 동일하게 try-catch 구문을 사용해 예외처리를 할 수 있습니다. try 문 안에서 진행되던 코드에 에러가 발생하면, 그 지점에서 코드 실행은 중단되고 catch 문의 코드로 넘어갑니다.try { // 코드}catch (error) { // 코드에서 에러가 발생하면, 중단하고 여기 코드가 실행됩니다.}errorcatch에서 받는 error 매개변수는 에러를 설명하는 error 객체입니다. error 객체는 에러 이름(name)과 에러 내용(message)로 이루어져 있으며, catch 문에서 선언 시 이름은 임의로 지어도 됩니다.try { // ...}catch (error) { console.log(error.name); console.log(er..
[JS] Syntax | 16. 구조분해(Destructuring)
·
Language/JavaScript
JavaScript의 구조분해는 배열이나 객체 등 여러 값의 집합으로 존재하는 값들의 요소를 각각의 변수에 바로 할당할 수 있게 하는 기능입니다. 배열의 경우 대괄호 [ ]로 변수들을 묶어 사용할 수 있습니다.const arr = ["cat", "dog", "rabbit", "parrot", "fox"];// destructuringconst [var1, var2, var3, var4, var5] = arr;console.log(var1); // "cat"console.log(var2); // "dog"console.log(var3); // "rabbit"console.log(var4); // "parrot"console.log(var5); // "fox"객체의 경우 중괄호 { }로 변수들을 묶..
[JS] Syntax | 15. Optional chaining - 속성 존재여부 확인하기
·
Language/JavaScript
JavaScript에서 객체에 대한 조건문을 작성할 때, 특정 속성값이 있는지의 여부가 중요하게 작용할 때가 있습니다.const user1 = { 'name': 'Jhon', 'age': 20, 'membership': 'plus',}const user2 = { 'name': 'Mary', 'age': 20,}// user2는 membership을 속성값으로 가지지 않기 때문에 에러가 발생합니다if (user1.membership === 'plus' && user2.membership === 'plus'){ console.log('all of them have plus membership');}이 경우, 해당 객체에 속성값이 존재하는지 먼저 확인한 수 조건문을 작성해야 합..
[JS] Syntax | 14. 계산된 속성명 (computed property name)
·
Language/JavaScript
JavaScript의 객체에서는 속성 이름에 표현식을 사용할 수 있습니다. 이를 계산된 속성명(computed property name)이라고 합니다. 사용하고자 하는 표현식을 대괄호 [ ] 로 감싸서 사용하면, 그 표현식의 결과로 나오는 값이 속성명으로 들어가게 됩니다. 함수 또한 표현식으로 나타낼 수 있으므로, 그 반환값이 속성명으로 들어가게 됩니다.const attr1 = 'a' + 'b';const attr2 = () => "cd";const obj = { [attr1]: 1; // "ab": 1 [attr2]: 'ace'; // "cd": 'ace'}이는 객체의 속성값을 호출할 때도 동일하게 사용할 수 있습니다.console.log(obj.[attr1]); // "ab"