자바스크립트의 그룹화 괄호
원한다면 괄호를 사용하여 연산의 우선순위를 지정할 수 있습니다. 예를 들어, 우리 코드를 먼저 덧셈을 수행한 다음 곱셈을 수행하도록 수정해 보겠습니다:
let a = 2 * (2 + 3);
alert(a); // 10을 출력합니다 (2 * 5의 결과)
참고: 괄호는 원하는 만큼 여러 개 사용할 수 있으며, 서로 중첩될 수도 있습니다:
let a = 2 * (2 + 4 * (3 + 1));
alert(a);
우선순위가 있는 연산을 괄호로 묶는 것도 오류가 아닙니다. 예를 들어, 숫자의 곱을 괄호로 묶어 보겠습니다:
let a = (2 * 2) + 3;
alert(a); // 7을 출력합니다 (4 + 3의 결과)
이 경우 괄호는 불필요합니다 (곱셈에는 이미 우선순위가 있으니까요), 하지만 코드는 유효합니다.
때로는 이러한 그룹화를 연산 우선순위가 명확하지 않은 곳에서 사용하기도 합니다. 예를 들어 다음 코드를 살펴보겠습니다:
let a = 8 / 2 * 4;
alert(a);
이미 알고 계시듯이, 여기서는 먼저 나눗셈이 수행된 후 곱셈이 수행됩니다. 하지만 첫눈에 이것이 명확하지 않을 수 있습니다.
그룹화 괄호를 사용하여 우선순위를 명시적으로 나타낼 수 있습니다:
let a = (8 / 2) * 4;
alert(a);
코드를 실행하지 말고, 화면에 무엇이 출력될지 결정하세요:
let a = (2 + 3) * (2 + 3);
alert(a);
코드를 실행하지 말고, 화면에 무엇이 출력될지 결정하세요:
let a = (2 + 3) * 2 + 3;
alert(a);
코드를 실행하지 말고, 화면에 무엇이 출력될지 결정하세요:
let a = 2 * (2 + 4 * (3 + 1));
alert(a);
코드를 실행하지 말고, 화면에 무엇이 출력될지 결정하세요:
let a = 2 * 8 / 4;
alert(a);
코드를 실행하지 말고, 화면에 무엇이 출력될지 결정하세요:
let a = (2 * 8) / 4;
alert(a);
코드를 실행하지 말고, 화면에 무엇이 출력될지 결정하세요:
let a = 2 * (8 / 4);
alert(a);