어떤분의 코드에서 복합대입연산자 (|=) 를 발견하였다.

비트 OR 대입 연산자인데, 해당 코드에서 왜 그 연산자를 써야했는지에 대한 고민에 며칠을 고생했다.

비트 OR 대입 연산자의 사전적인 정의는 다음과 같다.

 

|= 비트 OR 대입 연산자

expression1 |= expression2

expression1에 expression1 | expression2의 값을 대입합니다. 예를 들어, 다음 두 명령문은 동일합니다.

    x |= y;
    x = x | y; 

 

피연산자

    expression1:Number - 숫자 또는 변수입니다.

    expression2:Number - 숫자 또는 변수입니다.

반환값

    Number - 비트 연산의 결과입니다.

예제

    다음 예제에서는 비트 OR 대입(|=) 연산자를 사용합니다.

    // 15 decimal = 1111 binary 
    var x:Number = 15; 
    // 9 decimal = 1001 binary 
    var y:Number = 9; 
    // 1111 |= 1001 = 1111 
    trace(x |= y); // returns 15 decimal (1111 binary) 

 

연산자 하나만 놓고 봤을때는 아주 아주 단순하게 느껴지지만 프로그램 전체적으로 봤을때 해당 연산자를 왜 썼을까? 라는 의미를 고민할땐 결코 만만한 코드가 아니었다.

번호 제목 글쓴이 날짜 조회 수
246 [Gemini] ajax 와 fetch 의 차이 황제낙엽 2025.01.04 3419
245 [검토 완료] 디바이스 카메라로 촬영한 사진을 서버에 업로드하기 샘플 황제낙엽 2024.11.21 3987
244 브라우저에서 이미지를 편집(crop 등) 할 수 있는 오픈소스 Cropper.js 황제낙엽 2024.11.16 3842
243 [ChatGPT] json data 의 정렬 [1] 황제낙엽 2024.07.23 3352
242 DOMContentLoaded 이벤트와 window.onload 이벤트 황제낙엽 2024.07.15 3669
241 fetch() 사용 예제들 황제낙엽 2024.07.09 3380
240 [Copilot] Vanilla JavaScript에서 외부 스크립트 파일에 정의된 함수들을 로드 황제낙엽 2024.06.21 3758
239 [Copilot] ES6 모듈(module) 문법 황제낙엽 2024.06.21 3805
238 [Copilot] JSON 객체 내부 데이터를 순회하면서 조회하는 코드 황제낙엽 2024.06.02 3270
237 [Copilot] JavaScript로 서버에 특정 값을 POST 방식으로 전달하고 응답을 기다리지 않고 바로 종료 황제낙엽 2024.05.31 3615
236 json 데이터 내의 변수명에 prefix 로 type 표현하기 황제낙엽 2024.04.15 3361
235 fetch() 함수 사용 예제 file 황제낙엽 2023.11.23 3605
234 현재 document 의 host 와 port 를 얻는 방법 황제낙엽 2023.10.03 4209
233 (Bard) FileReader 로 여러개의 파일을 read 하는 법 file 황제낙엽 2023.08.23 3660
232 How to build a file upload service with vanilla JavaScript file 황제낙엽 2023.08.22 3715
231 (Bard) JavaScript로 JSON 배열을 작성하는 방법 황제낙엽 2023.08.21 3672
230 모바일 브라우저에서 file input element 를 이용하여 여러장의 이미지를 서버에 전송하려 할때 [1] 황제낙엽 2023.08.21 3703
229 navigator.mediaDevices 황제낙엽 2023.08.21 3798
228 Barcode Detection API 황제낙엽 2023.08.06 3854
227 정규식을 이용한 이메일 검증 스크립트 file 황제낙엽 2023.06.25 2894