TypeScript-연산자
운영자는 무엇입니까?
연산자는 데이터에 대해 수행 될 일부 기능을 정의합니다. 연산자가 작동하는 데이터를 피연산자라고합니다. 다음 식을 고려하십시오-
7 + 5 = 12
여기서 7, 5, 12의 값은 operands, + 및 =는 operators.
TypeScript의 주요 연산자는 다음과 같이 분류 할 수 있습니다.
- 산술 연산자
- 논리 연산자
- 관계 연산자
- 비트 연산자
- 할당 연산자
- 삼항 / 조건부 연산자
- 문자열 연산자
- 유형 연산자
산술 연산자
변수 a와 b의 값이 각각 10과 5라고 가정합니다.
예시보기
운영자 | 기술 | 예 |
---|---|---|
+ (더하기) | 피연산자의 합계를 반환합니다. | a + b는 15입니다. |
-(빼기) | 값의 차이를 반환 | a-b는 5입니다. |
* (곱하기) | 값의 곱을 반환합니다. | a * b는 50입니다. |
/ (나누기) | 나눗셈 연산을 수행하고 몫을 반환합니다. | a / b는 2입니다. |
% (모듈러스) | 나눗셈 연산을 수행하고 나머지를 반환합니다. | a % b는 0입니다. |
++ (증가) | 변수 값을 1 씩 증가시킵니다. | a ++는 11입니다. |
-(감소) | 변수 값을 1 씩 감소시킵니다. | a--는 9입니다. |
관계 연산자
관계 연산자는 두 엔티티 간의 관계 유형을 테스트하거나 정의합니다. 관계 연산자는 부울 값, 즉 true / false를 반환합니다.
A의 값이 10이고 B가 20이라고 가정합니다.
예시보기
운영자 | 기술 | 예 |
---|---|---|
> | 보다 큰 | (A> B)는 False입니다. |
< | 보다 작음 | (A <B)는 참 |
> = | 크거나 같음 | (A> = B)는 False입니다. |
<= | 보다 작거나 같음 | (A <= B)는 참 |
== | 평등 | (A == B)는 거짓입니다. |
! = | 같지 않음 | (A! = B)는 참입니다 |
논리 연산자
논리 연산자는 둘 이상의 조건을 결합하는 데 사용됩니다. 논리 연산자도 부울 값을 반환합니다. 변수 A의 값이 10이고 B가 20이라고 가정합니다.
예시보기
운영자 | 기술 | 예 |
---|---|---|
&& (그리고) | 연산자는 지정된 모든 표현식이 true를 반환하는 경우에만 true를 반환합니다. | (A> 10 && B> 10)은 거짓입니다. |
|| (또는) | 연산자는 지정된 표현식 중 하나 이상이 true를 반환하면 true를 반환합니다. | (A> 10 || B> 10)은 참 |
! (아니) | 이 연산자는 식 결과의 역을 반환합니다. 예 :! (> 5)는 false를 반환합니다. | ! (A> 10)은 True입니다. |
비트 연산자
변수 A = 2 및 B = 3 가정
예시보기
운영자 | 기술 | 예 |
---|---|---|
& (비트 AND) | 정수 인수의 각 비트에 대해 부울 AND 연산을 수행합니다. | (A & B)는 2입니다. |
| (BitWise OR) | 정수 인수의 각 비트에 대해 부울 OR 연산을 수행합니다. | (A | B)는 3입니다. |
^ (비트 XOR) | 정수 인수의 각 비트에 대해 부울 배타적 OR 연산을 수행합니다. 배타적 OR은 피연산자 1이 참이거나 피연산자 2가 참이지만 둘다는 아니라는 것을 의미합니다. | (A ^ B)는 1입니다. |
~ (비트가 아닙니다) | 단항 연산자이며 피연산자의 모든 비트를 반전하여 작동합니다. | (~ B)는 -4입니다. |
<< (왼쪽 이동) | 첫 번째 피연산자의 모든 비트를 두 번째 피연산자에 지정된 자릿수만큼 왼쪽으로 이동합니다. 새 비트는 0으로 채워집니다. 값을 한 위치 왼쪽으로 이동하는 것은 2를 곱하는 것과 같고, 두 위치를 이동하는 것은 4를 곱하는 것과 같습니다. | (A << 1)은 4입니다. |
>> (오른쪽 이동) | 이진 오른쪽 시프트 연산자. 왼쪽 피연산자의 값은 오른쪽 피연산자가 지정한 비트 수만큼 오른쪽으로 이동합니다. | (A >> 1)은 1입니다. |
>>> (0으로 오른쪽 시프트) | 이 연산자는 >> 연산자와 비슷하지만 왼쪽에서 이동 된 비트가 항상 0이라는 점이 다릅니다. | (A >>> 1)은 1입니다. |
할당 연산자
예시보기
운영자 | 기술 | 예 |
---|---|---|
= (단순 할당) | 오른쪽 피연산자의 값을 왼쪽 피연산자에 할당합니다. | C = A + B는 A + B의 값을 C에 할당합니다. |
+ = (추가 및 할당) | 왼쪽 피연산자에 오른쪽 피연산자를 추가하고 결과를 왼쪽 피연산자에 할당합니다. | C + = A는 C = C + A와 같습니다. |
-= (빼기 및 할당) | 왼쪽 피연산자에서 오른쪽 피연산자를 빼고 결과를 왼쪽 피연산자에 할당합니다. | C-= A는 C = C-A와 같습니다. |
* = (곱하기 및 할당) | 오른쪽 피연산자와 왼쪽 피연산자를 곱하고 결과를 왼쪽 피연산자에 할당합니다. | C * = A는 C = C * A와 같습니다. |
/ = (나누기 및 할당) | 왼쪽 피연산자를 오른쪽 피연산자로 나누고 결과를 왼쪽 피연산자에 할당합니다. |
Note − Bitwise 연산자에도 동일한 논리가 적용되므로 << =, >> =, >> =, & =, | = 및 ^ =가됩니다.
기타 연산자
부정 연산자 (-)
값의 부호를 변경합니다. 예를 들어 보겠습니다.
var x:number = 4
var y = -x;
console.log("value of x: ",x); //outputs 4
console.log("value of y: ",y); //outputs -4
컴파일시 다음 JavaScript 코드가 생성됩니다.
//Generated by typescript 1.8.10
var x = 4;
var y = -x;
console.log("value of x: ", x); //outputs 4
console.log("value of y: ", y); //outputs -4
다음과 같은 출력이 생성됩니다.
value of x: 4
value of y: -4
문자열 연산자 : 연결 연산자 (+)
+ 연산자를 문자열에 적용하면 첫 번째 문자열에 두 번째 문자열이 추가됩니다. 다음 예는이 개념을 이해하는 데 도움이됩니다.
var msg:string = "hello"+"world"
console.log(msg)
컴파일시 다음 JavaScript 코드가 생성됩니다.
//Generated by typescript 1.8.10
var msg = "hello" + "world";
console.log(msg);
다음과 같은 출력이 생성됩니다.
helloworld
연결 작업은 문자열 사이에 공백을 추가하지 않습니다. 단일 문에서 여러 문자열을 연결할 수 있습니다.
조건부 연산자 (?)
이 연산자는 조건식을 나타내는 데 사용됩니다. 조건부 연산자는 삼항 연산자라고도합니다. 구문은 다음과 같습니다.
Test ? expr1 : expr2
Test − 조건식을 나타냄
expr1 − 조건이 참인 경우 반환되는 값
expr2 − 조건이 거짓 인 경우 반환되는 값
다음 코드를 살펴 보겠습니다.
var num:number = -2
var result = num > 0 ?"positive":"non-positive"
console.log(result)
2 행은 변수의 값이 num0보다 큽니다. 만약num 0보다 큰 값으로 설정되면 "positive"문자열을 반환하고 그렇지 않으면 "non-positive"문자열을 반환합니다.
컴파일시 다음 JavaScript 코드가 생성됩니다.
//Generated by typescript 1.8.10
var num = -2;
var result = num > 0 ? "positive" : "non-positive";
console.log(result);
위의 코드 조각은 다음과 같은 출력을 생성합니다.
non-positive
유형 연산자
typeof 연산자
단항 연산자입니다. 이 연산자는 피연산자의 데이터 유형을 반환합니다. 다음 예를 살펴보십시오-
var num = 12
console.log(typeof num); //output: number
컴파일시 다음 JavaScript 코드가 생성됩니다.
//Generated by typescript 1.8.10
var num = 12;
console.log(typeof num); //output: number
다음과 같은 출력이 생성됩니다.
number
대신에
이 연산자는 개체가 지정된 유형인지 여부를 테스트하는 데 사용할 수 있습니다. 사용instanceof 연산자는 장에서 설명합니다. classes.