CoffeeScript-연산자 및 별칭
CoffeeScript 연산자
연산자는 특정 수학적 또는 논리 함수를 수행하도록 컴파일러에 지시하는 기호입니다. 간단한 표현을합시다4 + 5 is equal to 9. 여기서 4와 5는operands 그리고 '+'는 operator.
CoffeeScript에서 제공하는 연산자는 몇 가지 차이점을 제외하고 JavaScript에서와 동일합니다. JavaScript에는 문제가있는 연산자가 있습니다. CoffeeScript는이를 제거하거나 기능을 수정했으며 새로운 연산자도 도입했습니다.
다음은 CoffeeScript에서 지원하는 연산자 목록입니다.
- 산술 연산자
- 비교 연산자
- 논리 (또는 관계형) 연산자
- 할당 연산자
CoffeeScript 별칭
연산자 외에도 CoffeeScript는 별칭을 제공합니다. CoffeeScript는 CoffeeScript 코드를 읽기 쉽고 사용자 친화적으로 만들기 위해 다양한 연산자 및 기호에 별칭을 제공합니다.
CoffeeScript의 모든 연산자와 별칭을 하나씩 살펴 보겠습니다.
산술 연산자
CoffeeScript는 다음과 같은 산술 연산자를 지원합니다. 변수 가정A 보유 10 및 변수 B 보유 20, 다음-
예시보기
S. 아니 | 연산자 및 설명 | 예 |
---|---|---|
1 | + (Addition) 두 개의 피연산자를 더합니다. |
A + B = 30 |
2 | − (Subtraction) 첫 번째에서 두 번째 피연산자를 뺍니다. |
A-B = -10 |
삼 | * (Multiplication) 두 피연산자 곱하기 |
A * B = 200 |
4 | / (Division) 분자를 분모로 나눕니다. |
B / A = 2 |
5 | % (Modulus) 정수 나눗셈의 나머지를 출력합니다. |
B % A = 0 |
6 | ++ (Increment) 정수 값을 1 씩 증가시킵니다. |
A ++ = 11 |
7 | -- (Decrement) 정수 값을 1 씩 줄입니다. |
A-- = 9 |
비교 연산자
JavaScript는 다음 비교 연산자를 지원합니다. 변수 가정A 보유 10 및 변수 B 보유 20, 다음-
예시보기
S. 아니 | 연산자 및 설명 | 예 |
---|---|---|
1 | = = (Equal) 두 피연산자의 값이 같은지 확인합니다. 그렇다면 조건이 참이됩니다. |
(A == B)는 사실이 아닙니다. |
2 | != (Not Equal) 두 피연산자의 값이 같은지 확인하고 값이 같지 않으면 조건이 true가됩니다. |
(A! = B)는 사실입니다. |
삼 | > (Greater than) 왼쪽 피연산자의 값이 오른쪽 피연산자의 값보다 큰지 확인하고, 그렇다면 조건이 참이됩니다. |
(A> B)는 사실이 아닙니다. |
4 | < (Less than) 왼쪽 피연산자의 값이 오른쪽 피연산자의 값보다 작은 지 확인하고, 그렇다면 조건이 참이됩니다. |
(A <B)는 사실입니다. |
5 | >= (Greater than or Equal to) 왼쪽 피연산자의 값이 오른쪽 피연산자의 값보다 크거나 같은지 확인합니다. 그렇다면 조건이 참이됩니다. |
(A> = B)는 사실이 아닙니다. |
6 | <= (Less than or Equal to) 왼쪽 피연산자의 값이 오른쪽 피연산자의 값보다 작거나 같은지 확인하고, 그렇다면 조건이 참이됩니다. |
(A <= B)는 참입니다. |
다음 표에는 몇 가지 비교 연산자의 별칭이 나와 있습니다. 가정A 보유 20 및 변수 B 보유 20.
예시보기
운영자 | 별명 | 예 |
---|---|---|
= = (같음) | is | A is B 진실을 제공합니다. |
! = = (같지 않음) | isnt | A isnt B 거짓을 준다. |
논리 연산자
CoffeeScript는 다음과 같은 논리 연산자를 지원합니다. 변수 가정A 보유 10 및 변수 B 보유 20, 다음-
예시보기
S. 아니 | 연산자 및 설명 | 예 |
---|---|---|
1 | && (Logical AND) 두 피연산자가 모두 0이 아니면 조건이 참이됩니다. |
(A && B)는 사실입니다. |
2 | || (Logical OR) 두 피연산자 중 하나가 0이 아니면 조건이 참이됩니다. |
(A || B) 사실입니다. |
삼 | ! (Logical NOT) 피연산자의 논리적 상태를 되돌립니다. 조건이 참이면 논리 NOT 연산자는 조건을 거짓으로 만듭니다. |
! (A && B)는 거짓입니다. |
다음 표는 일부 논리 연산자의 별칭을 보여줍니다. 가정X 보유 true 및 변수 Y 보유 false.
예시보기
운영자 | 별명 | 예 |
---|---|---|
&& (논리 AND) | and | X and Y 너에게 거짓을 준다 |
|| (논리적 OR) | or | X or Y 당신에게 진실을 준다 |
! (x가 아님) | not | not X 너에게 거짓을 준다 |
비트 연산자
CoffeeScript는 다음과 같은 비트 연산자를 지원합니다. 변수 가정A 보유 2 및 변수 B 보유 3, 다음-
예시보기
S. 아니 | 연산자 및 설명 | 예 |
---|---|---|
1 | & (Bitwise AND) 정수 인수의 각 비트에 대해 부울 AND 연산을 수행합니다. |
(A & B)는 2입니다. |
2 | | (BitWise OR) 정수 인수의 각 비트에 대해 부울 OR 연산을 수행합니다. |
(A | B)는 3입니다. |
삼 | ^ (Bitwise XOR) 정수 인수의 각 비트에 대해 부울 배타적 OR 연산을 수행합니다. 배타적 OR은 피연산자 1이 참이거나 피연산자 2가 참이지만 둘다는 아니라는 것을 의미합니다. |
(A ^ B)는 1입니다. |
4 | ~ (Bitwise Not) 단항 연산자이며 피연산자의 모든 비트를 반전하여 작동합니다. |
(~ B)는 -4입니다. |
5 | << (Left Shift) 첫 번째 피연산자의 모든 비트를 두 번째 피연산자에 지정된 자릿수만큼 왼쪽으로 이동합니다. 새 비트는 0으로 채워집니다. 값을 한 위치 왼쪽으로 이동하는 것은 2를 곱하는 것과 같고, 두 위치를 이동하는 것은 4를 곱하는 것과 같습니다. |
(A << 1)은 4입니다. |
6 | >> (Right Shift) 이진 오른쪽 시프트 연산자. 왼쪽 피연산자의 값은 오른쪽 피연산자가 지정한 비트 수만큼 오른쪽으로 이동합니다. |
(A >> 1)은 1입니다. |
할당 연산자
CoffeeScript는 다음 할당 연산자를 지원합니다.
예시보기
S. 아니 | 연산자 및 설명 | 예 |
---|---|---|
1 | = (Simple Assignment ) 오른쪽 피연산자의 값을 왼쪽 피연산자에 할당합니다. |
C = A + B는 A + B의 값을 C에 할당합니다. |
2 | += (Add and Assignment) 왼쪽 피연산자에 오른쪽 피연산자를 추가하고 결과를 왼쪽 피연산자에 할당합니다. |
C + = A는 C = C + A와 같습니다. |
삼 | -= (Subtract and Assignment) 왼쪽 피연산자에서 오른쪽 피연산자를 빼고 결과를 왼쪽 피연산자에 할당합니다. |
C-= A는 C = C-A와 같습니다. |
4 | *= (Multiply and Assignment) 오른쪽 피연산자와 왼쪽 피연산자를 곱하고 결과를 왼쪽 피연산자에 할당합니다. |
C * = A는 C = C * A와 같습니다. |
5 | /= (Divide and Assignment) 왼쪽 피연산자를 오른쪽 피연산자로 나누고 결과를 왼쪽 피연산자에 할당합니다. |
C / = A는 C = C / A와 같습니다. |
6 | %= (Modules and Assignment) 두 개의 피연산자를 사용하여 모듈러스를 취하고 결과를 왼쪽 피연산자에 할당합니다. |
C % = A는 C = C % A와 동일합니다. |
Note − 동일한 논리가 Bitwise 연산자에 적용되므로 << =, >> =, >> =, & =, | = 및 ^ =처럼됩니다.
CoffeeScript의 같음 연산자
JavaScript로 작업하는 동안 두 가지 유형의 같음 연산자가 있습니다. == 과 ===.
그만큼 == JavaScript의 연산자는 type coercive즉, 연산에서 두 피연산자의 유형이 다른 경우 연산자 중 하나의 데이터 유형이 다른 연산자로 변환 된 다음 둘 다 비교됩니다.
CoffeeScript는 이러한 바람직하지 않은 강제를 피하고 == 연산자를 JavaScript의 엄격한 비교 연산자로 ===.
두 피연산자를 다음을 사용하여 비교하면 ===, 다음 반환 true, 값과 데이터 유형이 모두 같은 경우에만 false.
예
다음 예를 고려하십시오. 여기에 두 개의 변수가 있습니다.a 과 b. a 정수 유형의 값 21을 보유하고 b 동일한 값을 보유하지만 string유형. CoffeeScript에서 비교할 때a 과 b, 결과는 false. (이후== CoffeeScript의 연산자는 다음으로 변환됩니다. === JavaScript 연산자)
a=21
b="21"
result = 21=='21'
console.log result
컴파일시 위의 CoffeeScript는 다음 JavaScript를 생성합니다.
// Generated by CoffeeScript 1.10.0
(function() {
var a, b, result;
a = 21;
b = "21";
result = a === b;
console.log(result);
}).call(this);
실행시 다음 출력을 생성합니다.
false
실존 연산자
CoffeeScript는 변수의 존재를 확인하기 위해 존재 연산자로 알려진 새로운 연산자를 제공합니다. 다음과 같이 표시됩니다.?. 변수가 null이거나 정의되지 않은 경우 실존 연산자는 true를 반환합니다.
예
다음은 실존 연산자의 예입니다. 여기에 세 가지 변수가 있습니다.name, age, 및 subject 실존 연산자를 사용하여 변수 이름과 전화의 존재를 확인합니다.
name="Ramu"
age=24
subject="Engineering"
verify_name = name?
verify_phone = phone?
console.log verify_name
console.log verify_phone
컴파일시 다음 JavaScript 코드가 생성됩니다.
// Generated by CoffeeScript 1.10.0
(function() {
var age, name, subject, verify_name, verify_phone;
name = "Ramu";
age = 24;
subject = "Engineering";
verify_name = name != null;
verify_phone = typeof phone !== "undefined" && phone !== null;
console.log(verify_name);
console.log(verify_phone);
}).call(this);
위의 CoffeeScript 파일을 실행하면 다음과 같은 출력이 생성됩니다.
true
false
Note − 실존 연산자의 접근 자 변형이 있습니다. ?. 대신 사용할 수 있습니다. 연산자를 사용하여 null 참조를 찾습니다.
연결 비교
Python 에서처럼 CoffeeScript의 단일 표현식에서 일련의 비교 연산자를 사용할 수 있습니다.
예
다음은 연결 비교를 사용하는 예입니다.
score = 70
passed = 100 > score > 40
console.log passed
컴파일시 CoffeeScript 예제는 다음 JavaScript 코드를 제공합니다.
// Generated by CoffeeScript 1.10.0
(function() {
var passed, score;
score = 70;
passed = (100 > score && score > 40);
console.log(passed);
}).call(this);
위의 CoffeeScript 코드를 실행하면 다음과 같은 출력이 생성됩니다.
true
Note− CoffeeScript는 삼항 연산자를 제거합니다. 대신, 우리는inline if 성명서.
CoffeeScript 별칭
일반적으로 CoffeeScript는 CoffeeScript 코드를 읽기 쉽고 사용자 친화적으로 만들기 위해 다양한 연산자와 기호에 별칭을 제공합니다. 다음은 CoffeeScript에서 제공하는 별칭입니다.
이름 | 연산자 / 기호 | 별칭 |
---|---|---|
"같음"연산자 | == | 이다 |
"같지 않음"연산자 | ! == | isnt |
"아님"연산자 | ! | 아니 |
"and"연산자 | && | 과 |
"또는"연산자 | || | 또는 |
부울 값 true | 진실 | 사실, 예, 켜짐 |
부울 값 false | 그릇된 | 끄기, 아니 |
현재 개체 | 이 | @ |
줄 바꿈 (또는) 세미콜론 | \ n 또는; | 그때 |
if의 역 | ! 만약 | 아니면 |
어레이 존재 여부를 테스트하려면 | 에 | |
개체 존재 여부를 테스트하려면 | 의 | |
지수화 | ㅏ**비 | |
정수 나누기 | ㅏ//비 | |
배당 종속 모듈로 | ㅏ%%비 |
예
다음 예제는 CoffeeScript에서 별칭을 사용하는 방법을 보여줍니다-
a=21; b=21
x = true; y = false
console.log a is b
console.log a isnt b
console.log x and y
console.log x or y
console.log yes or no
console.log on or off
console.log a**b
console.log a//b
console.log a%%b
위의 예제를 컴파일하면 다음 JavaScript 코드가 제공됩니다.
// Generated by CoffeeScript 1.10.0
(function() {
var a, b, x, y,
modulo = function(a, b) { return (+a % (b = +b) + b) % b; };
a = 21;
b = 21;
x = true;
y = false;
console.log(a === b);
console.log(a !== b);
console.log(x && y);
console.log(x || y);
console.log(true || false);
console.log(true || false);
console.log(Math.pow(a, b));
console.log(Math.floor(a / b));
console.log(modulo(a, b));
}).call(this);
위의 CoffeeScript 파일을 실행하면 다음과 같은 출력이 생성됩니다.
true
false
false
true
true
true
5.842587018385982e+27
1
0