◎ JavaScript

    [GAS] 외부에서 URL과 해시 값을 받아 스프레드시트에 저장하기 [Google Sheets에 외부 데이터 추가하기]

    - 외부에서 URL과 해시 값을 받아 스프레드시트에 저장하기 웹 애플리케이션을 개발하다보면 외부에서 전달된 데이터를 스프레드시트에 저장해야 할 때가 있다. 오늘은 GAS를 사용하여 외부에서 전달된 URL과 해시 값을 받아와 스프레드시트에 저장하는 방법에 대해 알아본다. 아래 코드는 doPost 함수와 writeToSpreadsheet 함수로 구성되어 있다. doPost 함수는 외부에서 전달된 URL과 해시 값을 가져와서 스프레드시트에 입력한다. 그리고 writeToSpreadsheet 함수는 받아온 데이터를 실제로 스프레드시트에 입력하는 역할을 한다. // doPost 함수는 전달된 URL과 해시 값을 스프레드시트에 입력합니다. function doPost(e) { // 전달된 데이터에서 URL과 해시 ..

    [JS] HTML에서 엔터 키 입력 시 특정 함수 실행하기 [onkeyup 이벤트 핸들러를 사용하여 함수 실행하기]

    - HTML에서 엔터 키 입력 시 특정 함수 실행하기 HTML에서 키보드 이벤트를 처리하고자 할 때, 일반적으로 JavaScript를 사용하여 이벤트를 처리하며 onkeyup 이벤트 핸들러를 사용하여 엔터 키가 눌렸을 때 동작하도록 할 수 있다. 아래는 해당 기능을 구현한 예시다. - 테스트 코드 HTML 삽입 미리보기할 수 없는 소스

    [GAS] 자동으로 구글 캘린더에 일정 추가하기 [구글 스프레드 시트와 캘린더 연동하기]

    - 자동으로 구글 캘린더에 일정 추가하기 구글 앱스크립트를 활용하여 스프레드시트 데이터를 기반으로 자동으로 캘린더에 일정을 추가하는 방법이다. 아래 스크립트는 스프레드시트의 데이터를 읽어와서 캘린더에 일정을 추가하고, 그에 따른 처리를 수행한다. function addEventsToCalendar() { // 캘린더 ID와 스프레드시트 시트 이름 설정 const calendarId = "캘린더 ID"; // 여기에 캘린더 ID를 입력하세요. const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("시트이름"); // 스프레드시트 데이터 읽어오기 const dataRange = sheet.getDataRange().getValues(); //..

    [JS] 긴 문자열을 6자리 해시로 변환하기 [간단한 해싱 알고리즘 만들기]

    - 긴 문자열을 6자리 해시로 변환하기 JavaScript에서 긴 문자열을 6자리 해시로 변환하는 방법 중 하나는 SHA-256 등의 안전한 해시 알고리즘을 사용하고 그 결과를 base64 또는 다른 방법으로 인코딩하는 것이다. 하지만 SHA-256은 256비트의 해시 값을 생성하기 때문에 6자리 해시를 얻기 위해서는 이를 잘라야 하고, 이는 보안에 취약할 수 있다. 이번 글에서는 CRC32라는 테이블을 만들어 긴 문자열을 6자리 해시로 줄여볼 것이다. 그러나 이는 충돌 가능성이 있으며 보안적으로 안전하진 않아 간단한 문자열 체크섬 또는 일부 문자열 검증 용도로 사용하면 좋다. // CRC32 테이블 생성 const crcTable = new Uint32Array(256); for (let i = 0; ..

    [JS] 자바스크립트로 복사하기 버튼 만들기 [클립보드에 텍스트 복사하는 이벤트 생성]

    - 자바스크립트로 복사하기 버튼 만들기 아래 코드는 버튼을 클릭하면 입력된 텍스트를 클립보드에 복사하는 예제이다. 이 코드를 사용하면 'textToCopy'라는 ID를 가진 요소 안에 있는 텍스트를 복사한다. 클립보드에 복사된 후에는 경고 창으로 "Text copied to clipboard"와 함께 복사된 텍스트가 표시된다. - index.html Copy Text - copyButton.js // 버튼 요소 가져오기 const copyButton = document.getElementById('copyButton'); // 버튼에 클릭 이벤트 리스너 추가 copyButton.addEventListener('click', function() { // 복사할 텍스트를 가져오기 const textToCop..