본문 바로가기

전체 글

(110)
Delaying of Function INDEX Stack #VanillaJS Preview JS로 개발하다 보면 비동기 처리에 항상 신경을 쓸 수밖에 없습니다. *https://sieon-dev.tistory.com/56 이전 포스팅에서 한 번 다뤘었는데 좀 부족한 듯해 추가로 다뤄보려 합니다. (나중에 보면 이 글도 많이 부족해보이겠죠..ㅎ) Methodology 만약 얼마나 걸릴지 알수없는 함수 longTimeFunc(Function) 가 있고 그 함수를 호출해야 하는 함수는 오래 걸리는 메서드의 프로세스가 끝난 뒤에 결과 값을 출력해야 하는 경우라면 어떻게 해야 할까요? const RandomTimeSec = parseInt(Math.random() * 10); const longTimeFunc = () => { setTimeout(..
PM2를 사용해 PUSH서버 구축하기 INDEX Stack Nodejs,PM2,Javascript,CentOs Javascript Preview PUSH 서버는 사용자에게 보낼 메시지 정보를 받아 Google Firebase Cloud Messaging 로 전송하는 중간 브릿지 역할을 합니다. CentOs 위에서 Nodejs로 구현되어 있으며 무중단 배포 및 운영을 위해 PM2를 사용했습니다. What is PM2 ? PM2 is a daemon process manager that will help you manage and keep your application online. Getting started with PM2 is straightforward, it is offered as a simple and intuitive CLI, i..
[SwitfUI] 깨워줘요 앱 개발 "깨워줘요" 앱은 아직 출시하진 않았지만 연습용으로 만들어본 앱입니다. 디자인부터 개발까지 다하느라 좀 공수가 들었지만 그래도 만들어놓고 나니 뿌듯하네요ㅎㅎ 우선 바탕화면은 제가 좋아하는 Glassmorphism 디자인으로 꾸몄습니다. 마치 유리 위에 도형들이 있는 것 같이 보여 글래스모피즘이라고 하는데요, ZStack { Circle() .frame(width: 300) .foregroundColor(Color.blue.opacity(0.3)) .blur(radius: 10) .offset(x: -100, y : -150) Circle() .frame(width: 400) .foregroundColor(Color("lineColor").opacity(0.3)) .blur(radius: 10) .offs..
[JS] Object 는 call by reference 함수에서 값을 전달하는 대신 주소값을 전달하는 방식을 call by reference 라고 합니다. 참조를 호출하다 라는 뜻인데요, C언어에서 나온 개념입니다. 주소값을 전달하기 때문에 전달받은 변수를 변경하면 원본 데이터 역시도 변경이 되는거죠. JS에서 객체는 call by reference 입니다. 객체가 아니면 call by value 이구요. call by value 는 값을 호출하다, 라는 뜻을 가지고 있어 원본 데이터의 값을 호출하여 사용합니다. 즉 전달받은 변수를 변경해도 원본 데이터의 값에는 지장이 없는 것이죠. 쉽게 말해 복사한다고 합니다. 예를 들어볼게요. var a = 1; var b = a; b = 3; console.log("a :" + a + " b : " +b); 결과는 a ..
[JS] 계층(hierarchical) 구조의 데이터를 JSON 데이터로 변환하기 INDEX 다음과 같은 구조의 데이터가 있다. var obj =[ {'level' : 1, 'name' : 'grandParent1'}, {'level' : 2, 'name' : 'parent1'}, {'level' : 3, 'name' : 'child1'}, {'level' : 3, 'name' : 'child2'}, {'level' : 3, 'name' : 'child3'}, {'level' : 2, 'name' : 'parent2'}, {'level' : 1, 'name' : 'grandParent2'}, {'level' : 2, 'name' : 'parent3'}, {'level' : 3, 'name' : 'child4'}, {'level' : 3, 'name' : 'child5'} ] 이를 도식..
파이썬으로 업무 프로그램 개발하기 Stack PyQt5, Python Preview 금융권은 망분리 정책으로 인해 개발 PC와 업무 PC가 주어지는데 이 두 PC는 모두 외부 인터넷과 접속이 차단이 됩니다. 개발용 PC와 메신저와 같은 업무를 처리하기 위한 업무용 PC가 주어집니다. 신입사원 때부터 인수인계 받은 "메뉴 권한 작업"이라는 업무는 직원들이 사용하는 업무 프로그램의 메뉴를 관리하는 작업입니다. 제가 재직하는 회사의 업무 프로그램은 임직원마다 접속할 수 있는 메뉴가 구별되어 있습니다. 이 권한 정보는 Mysql DB에 저장되어 있어서 만약 A라는 직원에게 특정 화면(메뉴)에 접근할 수 있도록 하려면 테이블에 해당 직원의 할당 업무 코드를 INSERT를 해야 하죠. 또한 새로운 메뉴가 생기면 그 메뉴가 업무 프로그램에 보이도록 ..
[JS] new Date() 함수의 위험성 JS의 Date 객체는 쉽게 말해 JS로 현재 시스템 날짜를 제어할 수 있게 도와주는 JS에 내장된 객체입니다. 그래서 Date.prototype을 찍어보면 다음처럼 나옵니다. *시스템 날짜이기 때문에 휴대폰에서는 기기의 시간, PC에서는 PC에 설정되어 있는 시간대를 이용하죠. constructor을 찍어보면 native code 라고 나오고 실행시켜보면 현재 시간을 계산하여 return 해줍니다. 더보기 constructor 메서드는 클래스의 인스턴스 객체를 생성하고 초기화하는 특별한 메서드입니다. 내부 코드를 볼 순 없지만 사실 개발하면서 굳이 내장 함수를 들여다볼 일이 별로 없긴 해서 저도 찾아보다 포기했습니다ㅠ 이 Date 함수의 사용법에 대한 자료는 찾아보시면 많습니다. 이번 포스팅을 통해 얘..
[JS] Object Sorting Issue Preview json 파일을 object로 parsing해 사용하려고 봤더니 순서가 이상하다. 분명 원본 파일과 다르다. { "fruits": { "001" : "사과", "002" : "배", "003" : "메론", "301" : "수박", "999" : "참외" } } 이 json object는 과일 항목을 KEY VALUE 로 정의해놓은 값이다. 이 json object를 읽어 콘솔에 찍으면 웬걸.. 당연히 정의된 object 그대로 불러올 줄 알았으나 JS 엔진은 Object를 호출할 때 자동으로 Key 값 기준으로 정렬을 해준다고 한다. 그런데, Key 값을 기준으로 정렬한다고 해도 001, 002, 003, 301, 999 이 순서대로 돼야 하지 않나 싶었다. Methodology 그래서 ..

반응형