분류 전체보기 308

난 어쩌면

js deep dive에 변태마냥 빠져들었다 사실 너무 어려운책인데 백단 프론트단 다 쓸수 있는 js를 좀 빡세게 배우고싶어서 이 책을 읽기 시작했다 지금 프로토타입부분을 세번?정도 읽고있는데 다들 여기서 머리터진다고한단다 나도 어렵게 느껴지긴 마찬가지인데 반면에 내면적으론 재밋다.. 내가 수만줄 써왔던 코드가 이런식으로 구조가 되어있는것이고 논리회로짜듯이 딱딱 맞게 들어간다 사실 클래스부분은 코드를짜면서 그냥 살짝 흉내만 내봤었는데 왜 클래스를 쓸까 라는 궁금증이 있긴했다. 함수로 객체를 return하는것과 (물론 그 객체는 메서드도 포함되어있다) 클래스로 객체를 만드는게 무슨차이인가했는데 이것또한 궁금증이 풀렸다 사실 이 블로그에 포스팅하는건 약 10번정도 읽고 어느정도 이해됐다 하는 부분들을 적는거..

personal/dailyLife 2023.05.08

자바스크립트가 숫자데이터를 저장하는 방식 // 64비트 부동소수점

# deepdive에는 없는 내용이다 공부를 하다가 메모리에는 데이터가 2진법의 수로 저장이 된다고 하는데, 숫자데이터는 8바이트, 즉 64비트(1바이트=8비트)로 저장이 된다고 하였다. 그럼 2의 64승가지의 데이터가 저장이 될 수 있다는 말인데, 이렇게 많은 데이터를 표현할수 있는 공간은 어떻게 숫자를 표현할까? 라는 생각에 포스팅을 쓰게되었다. # 자바스크립트 deep dive에서 표현한 방식딥다이브에선 숫자가 이렇게 저장이 된다고 하였는데 물론 집필자쌤도 이건 그냥 예시라고 하였다. 그리고 64비트 부동소수점 방식으로 저장이 된다고 하였는데 사실 저 그림만봐도 맨아래 1바이트 공간빼고 나머지는 걍 다 0으로 채워져있어서 가성비 한남충인 나로써는 저 공간들이 너무 아까웠고 이해를 못하고 넘어가는게 ..

논리 곱, 논리 합 연산자의 작동방식

# 논리합 연산자 (||) OR연산자console.log( true || false )OR연산자는 뭐 다들 학창시절 수학시간에 안졸았다면 뭔지 다 알것이다. 여러 조건에서 참이 하나라도 있으면 전체적으로 참이 되는것이다. 정리하면 console.log(true || true); // true console.log(true || false); //true console.log(false || true); // true console.log(false || false); //false뭐이렇다, 이런것까지 설명하는건 귀찮지만 걍 써본다. 위의 코드에선 단순히 boolean값을 논리곱으로 써놨다. 그럼 여러 자료형으로 써본다면 콘솔값은 어떻게 변할까?console.log(0 || 1); //1 console.l..

전위연산자 & 후위연산자 (+엘리스 토끼굴에 빠진 var)

사실 이건 중요한건 아닌데 모던 js 읽을때 헷갈렸던 부분이다. # 후위연산자 let num = 1; console.log(num++, " #A"); // 1 #A console.log(num, " #B"); // 2 #B 일단 num에 1을 할당하고 여기에 후위연산자를 붙여서 콘솔로 찍어보면 A부분에 1로 뜬다. 응? 난 분명 1을 증가시켰는데? 그래서 B에서 다시 num을 참조하려고 하면 증가된 2를 볼 수 있다. # 전위연산자 let num = 1; console.log(++num, " #A"); // 2 #A console.log(num, " #B"); // 2 #B 이곳에선 결과가 다르게 뜬다. # 두 차이는 무엇일까? - 후위 연산자는 원래 num의 값을 가지고 있어서 참조시에는 원래 num의..

롤스토이 // 레이어마스크 (브러쉬툴, 전경색 배경색 바꾸기 단축키)

# 레이어마스크 전에 썼던 사진이다. 여기서 하늘이 맘에 안들어서 다른 사진껄로 합성해보곘다.. 요 하늘사진으로 바꿀거다. 그럼 밑에있는걸 지워야겠지? 이때 레이어마스크를 써야한다. 저 하늘사진 레이어를 클릭한채로 아래 사진기 모양을 클릭한다. 클릭하면 레이어마스크가 씌워졌다. 그럼 이제 브러쉬툴을 클릭하고 전경색과 배경색은 기본 디폴트 (단축키 d)로 흰색 검은색으로 한다. 그리고 문지르면 이렇게 저 배경색 부분만 지울 수 있다. 경계선이 뚜렷한걸 바꾸고 싶으면 브러쉬툴에서 shift + []으로 경계조절을 하면된다. 전경색 배경색 스와이프는 단축키 x로 바꾸면 된다. 또 이 상태에서 걍 엔터키 누르면 바로 opacity바꿀수도 있음. 결과물 전 후 완성본

롤스토이 // 색보정 (크롭툴, curve, selective color)

색보정은 워낙 전문가의영역이라.. 그냥 자주쓰는것 위주로 배웠다. 파묵칼레가서 찍은 사진이다.. 먼저 레이어 하나 복사해서 하는게 맘편하다. 되돌아가기 힘들기때문에.. # 크롭툴 ( c ) 얘다. 누르면 사진이 요렇게 변한다. 자를만큼 자르면된다. 더해서 회전해서 자를수도 있따. 자르면 사진대지? 이것도 알아서 조절이되더라. 난 사진 워낙 잘찍어서 자를필요가 없어서 안자름. # curv ( cntl + m ) 저번강의에서도 잠깐 봤던 기능이다. 이거 누르면 이런창이 뜬다. 저그래프를 위로올리면 이렇게 사진이 좀 밝아진다. 아래로 내리면 어두워진다. 귀찮아서 사진생략 윗부분은 사진의 밝은 영역, 아랫부분은 어두운영역을 조절할수 있는 곳이다. 보통 s자그래프 자주 씀 선명해지고 쩅해짐. 참고로 저 창에서 알..

롤스토이 // 레이어 그룹, 텍스트, 드롭쉐도우

# 레이어그룹 (cntl + g) 이렇게 폴라로이드 사진같은 이미지를 만들었다. 저기 검은색 에다가 사진을 갖다 넣을건 클리핑마스크하면된다. 이런 폴라로이드 템플릿 여러장을 하고 싶다면? 레이어패널에서 원하는 레이어들을 묶은다음, 그룹으로 만들어주면된다. 단축키는 cntl + G. 일러스트레이터랑 똑같음. 그룹으로 묶였다. 이제 통쨰로 갖고다닐수 있다. 복사를 해보고 적절히 배열을 해보면.. 이렇게 같은 그룹을 여러개 만들수 있다. # 레이어 쉐도우 효과 원하는 레이어 더블클릭해서 레이어 스타일 들어간다음에 드롭 쉐도우 해주면 됩니다.. # 텍스트 별다른건 없고, character 패널에서 조절하면 된다. 요렇게..

롤스토이 // 클리핑 마스크(마술봉, 지우개, 색채우기, 채도, 톤)

# 마술봉 (단축키 w) 여기서 하얀색 배경을 뺴고싶다면? 마술봉으로 하얀색 영역을 선택하자. 얘가 마술봉툴이다. 이걸로 하얀색 배경을 선택하면? 요렇게 하얀색 배경부분만 선택이 잡히게 된다. 잘 안잡히면 tolerance값을 조절하도록 해보자. 크기가 작을수록 경계선을 뚜렷하게, 크면 조금 여유있게 잡아준다. 잡아주고 delete누르면 자르고 레이어가 복사된다 # 선택영역 비활성화 cntl + d 난 그냥 m누르고 아무데나 클릭함. # 쉐이프툴 (u) 뒷배경레이어로 잔티잘보이게 사각형으로 만들어봄. # 지우개툴 (e) 저 잡티를 지워보자. 크기조절은 대괄호 []로 할수있음. 일러랑 똑같음. 잡티지울 레이어 클릭하고 지우개로 지워주샘. # 해당레이어 해당 오브젝트 잘보기 컨트롤 누르고 원하는 레이어 클릭..

데이터 타입에 따른 메모리 접근

하 시발.. 티스토리 서버 터져서 적어놓은거 다 날아가서 다시 쓴다..ㅡㅡ # 같은 메모리 값이라도 다른 결과가 나올 수 있다? let binaryData = 0b01000001; console.log(Number(binaryData)); //65 console.log(String.fromCharCode(binaryData)); //A 위 코드를 보자. binaryData변수값에 할당한 저 괴상한 숫자는 2진법으로 저장된 65라는 숫자다. 하지만 콘솔로 각각 찍어본 결과는 서로 다른 값이다. https://jacobowl.tistory.com/134 메모리에 저장되는 기본 구조. # 시작하면서 2진법에대해서 되돌아보자. 중학생때 배웠던 2진법을 기억하고 있을것이다. 즉 0,1로 숫자를 표현하는 방법인데 ..