간단하게

해당 필드(?)가 있는지 확인하고 읽을 필요 없이 바로 확인해서 출력해주는 연산자

편리하긴 한데.. 위험하지 않나 생각되네

const adventurer = {
  name: 'Alice',
  cat: {
    name: 'Dinah',
  },
};

if( adventurer.dog != undefined) console.log(adventurer.dog); else console.log(undefined);
undefined

adventurer?.dog
undefined

 

Optional chaining
optional chaining 연산자 (?.) 는 체인의 각 참조가 유효한지 명시적으로 검증하지 않고, 연결된 객체 체인 내에 깊숙이 위치한 속성 값을 읽을 수 있다.

?. 연산자는 . 체이닝 연산자와 유사하게 작동하지만, 만약 참조가 nullish (null 또는 undefined)이라면, 에러가 발생하는 것 대신에 표현식의 리턴 값은 undefined로 단락된다. 함수 호출에서 사용될 때, 만약 주어진 함수가 존재하지 않는다면, undefined를 리턴한다.

따라서 참조가 누락될 가능성이 있는 경우 연결된 속성으로 접근할 때 더 짧고 간단한 표현식이 생성된다. 어떤 속성이 필요한지에 대한 보증이 확실하지 않는 경우 객체의 내용을 탐색하는 동안 도움이 될 수 있다.

[링크 : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/Optional_chaining]

 

함수나 객체에도 접근 가능하다.

?.()
?.[]

[링크 : https://ko.javascript.info/optional-chaining]

[링크 : https://coding-farmer.tistory.com/4]

 

ES2020에 추가된 기능이라고

[링크 : https://pewww.tistory.com/27]

'Programming > javascript & HTML' 카테고리의 다른 글

js split()  (0) 2024.04.12
qr decoder part 2  (0) 2024.04.07
javascript groupby map  (0) 2024.03.12
javascript 숫자  (0) 2024.02.07
마우스로 테이블 열 변경하기  (0) 2024.02.02
Posted by 구차니
Programming/golang2024. 4. 8. 15:57

listen에서 accept 되면 write timeout은 조금 도외시 해도 되지 않을까 해서

read에만 timeout 하면 될 것 같아서 검색

 

 

conn.SetReadDeadline(time.Now().Add(timeoutDuration))

[링크 : https://gist.github.com/hongster/04660a20f2498fb7b680]

 

d := net.Dialer{Timeout: timeout}
conn, err := d.Dial("tcp", addr)
if err != nil {
   // handle error
}

[링크 : https://stackoverflow.com/questions/47117850/how-to-set-timeout-while-doing-a-net-dialtcp-in-golang]

'Programming > golang' 카테고리의 다른 글

golang reflect  (0) 2024.02.20
golang echo i18n  (0) 2024.02.19
golang package  (0) 2024.02.19
golang html/template ParseFiles()  (0) 2024.02.16
golang runtime.GOMAXPROCS()  (0) 2024.02.15
Posted by 구차니

xzing이 가장 원본인것 같고

그것의 javascript 버전이 jsqrcode

 

[링크 : https://github.com/zxing/zxing]

[링크 : https://github.com/LazarSoft/jsqrcode]

'Programming > javascript & HTML' 카테고리의 다른 글

js split()  (0) 2024.04.12
자바스크립트 옵셔널 체이닝(optional chaining)  (0) 2024.04.08
javascript groupby map  (0) 2024.03.12
javascript 숫자  (0) 2024.02.07
마우스로 테이블 열 변경하기  (0) 2024.02.02
Posted by 구차니

조카가 중학생이 되었는데

생일 선물로 미리 퉁치자고 음악앨범 하나 사주니

그래도 어린이날 선물로 내놓으라고 함 -_-

 

중학생이면 청소년이지!

'개소리 왈왈 > 육아관련 주저리' 카테고리의 다른 글

하루 늦은 벼룩시장  (0) 2024.04.13
개 털 밀기!  (0) 2024.03.30
처갓댁에서 컴백  (0) 2024.03.24
집 정리  (0) 2024.03.18
뽀일이 털 밀기  (0) 2024.03.17
Posted by 구차니

오랫만에 갔더니

운길산 까지도 겨우 도착하고

운길산 가다가 멈춰서 운길산을 찾고 있었으니 있을리가 있나 -_-

'개소리 왈왈 > 자전거' 카테고리의 다른 글

서울 자전거 대행진 신청  (0) 2024.04.01
간만에 자전거  (0) 2024.02.17
라이트 손..상?  (0) 2023.05.21
이런.. 자전거대행진 신청 실패  (0) 2021.11.09
라이트 청소  (0) 2021.10.26
Posted by 구차니

X3400 L3400 같은 네할렘 기반의 xeon인데

[링크 : https://www.cpu-world.com/CPUs/Xeon/TYPE-Xeon%203400.html]

 

Single Intel® Xeon® 3400 series processor in an LGA1156 socket

[링크 : https://www.supermicro.com/manuals/motherboard/3420/MNL-1130.pdf]

 

랭크가 높아지면(Quad Rank) 1333MHz 까지 가능한 메모리가 800MHz 까지 제한된다.

아마도 core 시리즈 초기형의 경우 메모리 컨트롤러 기술이 성숙되지 않아, 최대 클럭이 상당히 제한되었던 듯.

 

[링크 : https://www.supermicro.com/manuals/motherboard/3420/MNL-1130.pdf]

'하드웨어 > Server Case & board' 카테고리의 다른 글

보드에 ECC/reg 장착하기  (0) 2024.04.09
supermicro 구형 IPMI iKVM 접속  (0) 2024.04.01
xeon에 non-ecc가 가능한가?  (0) 2024.03.31
iKVM 접속 오류  (0) 2022.11.27
supermicro X9SCM-F IPMI LAN(dedicate)  (0) 2022.02.18
Posted by 구차니
Programming/node.js2024. 4. 4. 19:31

pnpm은 또 머냐..

중국어가 써있으니 먼가 쓰기가 꺼려지는건.. 왜 일까!?

[링크 : https://www.npmjs.com/package/qrcode-decoder]

 

개발자 도구로 봐서는 외부 통신 자체는 안하는 것 같다.

[링크 : https://github.com/yugasun/qrcode-decoder]

'Programming > node.js' 카테고리의 다른 글

node.js 웹소켓 채팅 서버 예제  (0) 2022.07.14
ubuntu 18.04 / nodej.s 18.x 실패  (0) 2022.05.19
웹소켓  (0) 2022.03.25
broadway / jsmpeg  (0) 2020.09.16
node.js array.sort() 주의사항  (0) 2020.02.01
Posted by 구차니
하드웨어/RAID2024. 4. 3. 19:50

'하드웨어 > RAID' 카테고리의 다른 글

MSM으로 4disk raid 5 -> 5disk raid 5로 마이그레이션  (0) 2024.04.15
RAID consistency check fail  (0) 2024.04.09
SMC2108 SSD cachecade  (0) 2024.04.03
raid 케이블이 잘못 연결됨 + LED 깜박이기  (0) 2024.04.03
MegaCLI  (0) 2024.04.01
Posted by 구차니

'이론 관련 > 전기 전자' 카테고리의 다른 글

아날로그 컴퓨터  (0) 2023.10.11
rc 시정수 계산  (0) 2023.10.05
dB(데시벨-상대값)과 dBm(절대값)  (0) 2023.08.23
역극성 보호  (0) 2023.08.01
유선 전화기 들면 들리는 소리  (0) 2023.07.25
Posted by 구차니
하드웨어/RAID2024. 4. 3. 11:46

 

 

The CacheCade 2.0 is now supported. Please make sure to use the firmware of version 2.120.53-1235 or later. Older firmware does not support the CacheCade. For the latest firmware, please go to: https://www.supermicro.com/wdl/driver/SAS/LSI/2108/Firmware/.
 
It also require to purchase CacheCade lincense, AOC-CHCD-PRO2-ESW.  

Date Posted
02/18/11

[링크 : https://www.supermicro.com/support/faqs/faq.cfm?faq=11360]

 

 

 

 

'하드웨어 > RAID' 카테고리의 다른 글

RAID consistency check fail  (0) 2024.04.09
smc2108  (0) 2024.04.03
raid 케이블이 잘못 연결됨 + LED 깜박이기  (0) 2024.04.03
MegaCLI  (0) 2024.04.01
MegaRAID Storage Manager(MSM) 설치완료  (0) 2024.04.01
Posted by 구차니