JavaScript 수학

숫자를 처리하는 일반적인 상황은 수학적입니다.

JavaScript 수학 연산자

수학 연산자는 숫자(문자나 변수)에 수학적 연산을 수행합니다.

연산자 설명
+ 가법
- 감소
* 곱셈
** 곱셈(ES2016
/ 나눗셈
% 계수
++ 증가
-- 감소

수학 연산자

형식적인 수학적 연산은 두 수치를 처리합니다.

이 두 수는 literal value일 수 있습니다:

인스턴스

var x = 7 + 8;

자신이 직접 시도해보세요

또는 변수:

인스턴스

var x = a + b;

자신이 직접 시도해보세요

또는 표현식:

인스턴스

var x = (7 + 8) * a;

자신이 직접 시도해보세요

연산자와 연산자

수학적 연산에서 수는연산자와 연산자.

(두 연산자 사이에서 수행되는)연산은연산자정의

연산자와 연산자 연산자 연산자와 연산자
7 + 8

가법

가법연산자(+)추가수:

var x = 7;
var y = 8;
var z = x + y; 

자신이 직접 시도해보세요

감소

감소연산자(-)감수

var x = 7;
var y = 8;
var z = x - y; 

자신이 직접 시도해보세요

곱셈

곱셈연산자(*)곱수

var x = 7;
var y = 8;
var z = x * y; 

자신이 직접 시도해보세요

나눗셈

나눗셈연산자(/)분수

var x = 7;
var y = 2;
var z = x / y; 

자신이 직접 시도해보세요

계수

계수연산자(%)나눗셈의 나머지를 반환합니다.

var x = 7;
var y = 2;
var z = x % y; 

자신이 직접 시도해보세요

주석:계산에서 두 정수의 나눗셈은 몫과 나머지를 생성합니다.

주석:수학에서는 모듈러 연산의 결과는 수학적 나눗셈의 나머지입니다.

증가

증가연산자(++)수치를 증가시킵니다.

var x = 7;
x++;
var z = x;

자신이 직접 시도해보세요

감소

감소연산자(--)수치를 감소시킵니다.

var x = 7;
x--;
var z = x; 

자신이 직접 시도해보세요

곱셈

곱셈 연산자(**)는 첫 번째 연산자를 두 번째 연산자의 제곱으로提拔합니다.

인스턴스

var x = 5;
var z = x ** 2;          // 결과는 25

자신이 직접 시도해보세요

x ** y가 생성하는 결과는 Math.pow(x,y)와 같습니다:

인스턴스

var x = 5;
var z = Math.pow(x,2);   // 결과는 25

자신이 직접 시도해보세요

연산자 우선순위

연산자 우선순위(Operator precedence)는 계산 표현식에서 수행되는 작업의 순서를 설명합니다.

인스턴스

var x = 200 + 50 * 2;

자신이 직접 시도해보세요

이 예제의 결과는 250 * 2인가요 아니면 200 + 100인가요?

덧셈과 곱셈의 우선순위는 무엇입니까?

전통적인 학교 수학에서, 곱셈은 우선순위가 있습니다.

곱셈(*)와 나눗셈(%)와 덧셈(+)와 뺄셈(-)는 더 높은우선순위.

학교 수학에서처럼, 구분자를 사용하여 우선순위를 변경할 수 있습니다:

인스턴스

var x = (200 + 50) * 2;

자신이 직접 시도해보세요

구분자를 사용할 때, 구분자 내의 연산자는 먼저 계산됩니다.

여러 연산자가 동일한 우선순위를 가질 때(예: 덧셈과 뺄셈이 그렇다면), 계산은 왼쪽에서 오른쪽으로 진행됩니다:

인스턴스

var x = 200 + 50 - 2;

자신이 직접 시도해보세요

JavaScript 연산자 우선순위 값

연산자 설명 인스턴스
20 ( ) 표현식 그룹 (3 + 4)
       
19 . 구성원 person.name
19 [] 구성원 person["name"]
19 () 함수 호출 myFunction()
19 new 만들기 new Date()
       
17 ++ 포스트픽스 증가 i++
17 -- 포스트픽스 감소 i--
       
16 ++ 프리픽스 증가 ++i
16 -- 프리픽스 감소 --i
16 ! 논리 부정 !(x==y)
16 typeof 형식 typeof x
       
15 ** 곱수(ES7) 10 ** 2
       
14 * 곱하기 10 * 5
14 / 나누기 10 / 5
14 % 모듈러 연산 10 % 5
       
13 + 추가 10 + 5
13 - 빼기 10 - 5
       
12 << 왼쪽 이동 x << 2
12 >> 오른쪽 이동 x >> 2
12 >>> 오른쪽 이동(无损) x >>> 2
       
11 < 작음 x < y
11 <= 또는 작거나 같음 x <= y
11 > x > y
11 >= 또는 크거나 같음 x >= y
11 in 객체의 속성 "PI" in Math
11 instanceof 객체의 인스턴스 instanceof Array
       
10 == 같음 x == y
10 === 절대 같음 x === y
10 != 다릅니다 x != y
10 !== 절대로 다릅니다 x !== y
       
9 & 비트wise AND x & y
8 ^ 비트wise XOR x ^ y
7 | 비트wise 또는 x | y
6 && 논리와 x && y
5 || 논리 부정 x || y
4 ? : 조건 ? "Yes" : "No"
       
3 = 대입 x = y
3 += 대입 x += y
3 -= 대입 x -= y
3 *= 대입 x *= y
3 %= 대입 x %= y
3 <<= 대입 x <<= y
3 >>= 대입 x >>= y
3 >>>= 대입 x >>>= y
3 &= 대입 x &= y
3 ^= 대입 x ^= y
3 |= 대입 x |= y
       
2 yield 정지 함수 yield x
1 , 콤마 7, 8

주의:푸른빛으로 표시된 기술은 실험적이거나 권장되는 기술입니다 (ECMASScript 2016 또는 ES7)

ヒント:괄호 내의 표현식은 표현식의 나머지 부분에서 사용되기 전에 완전히 계산됩니다.