JavaScript 연산자에는 다음과 같은 6가지 유형이 있습니다. 1. 산술 연산자, +, -, * 등 2. "==", "===" 등과 같은 식별 연산자; 연산자, <, > 등 4. 문자열 연산자, <, > 등 5. 논리 연산자 “&&”, “!” 등 6. 할당 연산자, =, “+ ="등..
이 튜토리얼의 운영 환경: Windows 7 시스템, JavaScript 버전 1.8.5, Dell G3 컴퓨터.
자바스크립트에는 많은 연산자가 있는데 주로 산술 연산자, 항등 연산자, 비교 연산자, 문자열 연산자, 논리 연산자, 할당 연산자 등으로 나뉩니다. 이러한 연산자에는 몇 가지 고유한 작업 규칙이 있습니다. JavaScript의 연산자를 소개하겠습니다.
1. JavaScript 연산자의 유형
1. 산술 연산자: +, -, *, /, %, -(단항 부정), ++, --
2 동일 및 동일 연산자: = = , == = , !== , !===
3. 문자열 연산자: < , > , =, +
5. 논리 연산자: &&, ||, !,
6. 할당 연산자: =, +=, *=, -=, /=
2. 1. 산술 연산자 규칙
"+": "덧셈" 및 "연결" 연산을 수행할 수 있습니다. 두 연산자 중 하나가 문자열이면 javascript 다른 하나를 문자열로 변환한 다음 연결하면 됩니다. 피연산자 2개. "+": 피연산자가 객체인 경우 JavaScript는 객체를 더하기 위한 숫자 또는 연결을 위한 문자열로 변환합니다.
"-" "*" "/" 두 피연산자 중 하나인 경우; 숫자가 아닌 경우 수학 연산을 수행하려면 숫자로 변환하세요.
"/" JavaScript에서는 모든 숫자가 부동 소수점 숫자이므로 나누기 결과는 모두 부동 소수점 숫자입니다. 5/2 = 2.5는 플러스 또는 마이너스 무한대입니다.
"%" 모듈로 연산자: 첫 번째 피연산자와 두 번째 피연산자의 모듈로를 계산합니다. 즉, 첫 번째 피연산자를 두 번째 피연산자로 나누면 나머지가 반환됩니다. 피연산자가 숫자가 아닌 경우 숫자로 변환됩니다.
“-” 단항 부정: 피연산자를 부정합니다. 피연산자가 숫자가 아닌 경우 숫자로 변환합니다.
"++" "--" 증가 연산자/감소 연산자 기호: 피연산자는 변수, 트리 그룹의 요소 또는 객체의 속성이어야 합니다. 피연산자가 숫자가 아닌 경우 숫자로 변환됩니다.
참고: "++"가 피연산자 앞에 있는 경우 먼저 피연산자를 증가시킨 다음 피연산자 증가 후의 값을 계산하세요.
피연산자 뒤에 "--"가 있는 경우 먼저 피연산자가 증가하기 전의 값을 계산한 다음 피연산자를 증가시킵니다.
예: i = 1; //i에 값 1을 할당
j = ++i; //먼저 i를 2로 증가시킨 다음 j에 2를 할당하고 i의 값은 2입니다. j도 2이다.
i = 1; //i에 1을 할당합니다.
j = i++; //i를 j에 먼저 할당한 다음 i의 값을 2로 늘립니다. i의 값은 2이고 j의 값은 1입니다. .
감소 연산자 "--"는 "++"와 동일합니다.
2. 항등 연산자 및 항등 연산자(I) "==" "!==" 항등 연산자 및 비항등 연산자: 두 피연산자를 비교하고 부울이 아닌 값을 반환합니다.
숫자값, 문자열, 부울값을 비교하면 모두 정량적 값을 사용합니다. 두 변수는 저장된 값이 동일한 경우에만 동일합니다.
객체, 배열, 함수를 비교할 때는 참조가 사용됩니다. 두 변수는 동일한 객체를 참조할 때만 동일합니다. 두 개의 서로 다른 배열은 정확히 동일한 요소를 가지고 있더라도 완전히 다릅니다. 객체, 배열, 함수에 대한 참조를 저장하는 변수의 경우 동일한 객체, 배열, 함수를 참조하는 경우에만 동일합니다.
주의! 지켜야 할 원칙:
두 피연산자의 타입이 다른 경우: 같은 타입으로 변환,
1) 숫자와 문자열, 문자열을 숫자로 변환한 후 비교하세요.
2) 비교를 위해 true를 1로, false를 0으로 변환합니다.
3) 객체, 배열, 함수와 숫자 또는 문자열, 객체, 배열, 함수를 원시형 값으로 변환한 후 비교합니다. (먼저 valueOf를 사용하고, 그래도 작동하지 않으면 toString을 사용하세요.)
4) 다른 유형의 조합은 동일하지 않습니다.
두 개의 피연산자 유형이 동일하거나 동일한 유형으로 변환된 경우:
1) 두 개의 문자열: 동일한 위치의 문자가 동일하면 두 문자열은 동일합니다.
2) 2개의 숫자: 2개의 숫자가 동일하면 동일합니다. 하나가 NaN이거나 둘 다 NaN인 경우에는 동일하지 않습니다.
3) 둘 다 참이거나 둘 다 거짓이면 같은 의미입니다.
4) 두 개의 참조가 동일한 개체, 함수 또는 배열을 참조하는 경우 서로 다른 개체, 함수 또는 배열을 참조하는 경우 동일하지 않습니다. 원래 값과 동일하게 완전하게 변환될 수 있습니다.
5) 2개의 null 또는 둘 다 정의되지 않은 경우 동일합니다.
"!=" 비항등 연산자: 항등 연산자 감지의 반대 결과입니다.
(II) "===" "!===" 동일 연산자 및 동일하지 않은 연산자 기호:
동일 연산자는 동일 연산자의 비교 규칙을 따르지만 피연산자의 유형 변환을 수행하지 않습니다. 두 피연산자의 유형이 다른 경우 false가 반환되고, 두 피연산자의 유형이 동일한 경우에만 같음 연산자의 비교 규칙에 따라 비교가 수행됩니다.
"!==" 동일하지 않은 연산자는 동일한 연산자와 반대되는 결과를 냅니다. 두 피연산자의 유형이나 값이 다른 경우 true를 반환합니다.
3. 비교 연산자
이 비교 연산자는 서로 다른 유형의 값을 비교하는 데 사용되며 결과는 부울 값을 반환합니다.
"<"">""<="">="
규칙에 유의하세요. 비교의 피연산자는 모든 유형이 될 수 있지만 숫자와 피연산자에 대해서만 수행할 수 있습니다. 숫자나 문자열이 아닌 피연산자는 숫자나 문자열로 변환됩니다.
1) 두 피연산자가 모두 숫자이거나 둘 다 숫자로 변환할 수 있는 경우 숫자의 크기에 따라 비교합니다.
2) 두 피연산자가 모두 문자열이거나 둘 다 문자열로 변환할 수 있는 경우 비교는 다음과 같습니다.
3) 문자열이 숫자를 만나면 비교를 위해 문자열이 숫자로 변환됩니다.
4) 피연산자를 숫자나 문자열로 변환할 수 없는 경우 결과는 false입니다.
4. 문자열 연산자
전용 문자열 연산자는 없지만 일부 연산자는 문자열 피연산자를 만날 때 다르게 동작합니다.
(I) "+"는 2개의 문자열을 연결합니다.
1) 두 피연산자가 문자열인 경우 연결합니다.
2) 둘 중 하나가 숫자인 경우 숫자를 문자열로 변환합니다.
(II) ">" 비교 연산자는 비교를 통해 두 문자열의 순서를 확인합니다. 문자 순서는 작은 문자가 큰 문자열 앞에, 대문자가 앞에 옵니다.
(III) "+" 기능은 계산 순서에 따라 다릅니다.
예: s = 1 + 2 + "var" 다음: 1+2가 먼저 계산되고 그 다음이 3var이므로 결과가 반환됩니다. 결과 3은 "var"로 연결되는 문자열로 변환됩니다.
예: s = "var" + 1 + 2 결과: var와 1 사이의 연결이 먼저 계산된 다음 결과 var1이 반환됩니다. 문자열로 변환된 2로 연결됩니다.
5. 논리 연산자
는 부울 연산을 수행하는 데 사용되며 종종 비교 연산자와 함께 사용되어 복잡한 비교 연산을 표현합니다.
"&&" 논리 AND 연산, "||" 논리 OR 연산자, "!" 논리 NOT 연산자
(I) "&&" 두 피연산자가 모두 부울 값인 경우 논리 AND가 수행됩니다. 두 부울 값이 모두 true인 경우에만 결과를 true로 반환하고, 그렇지 않으면 false를 반환합니다.
참고: 실제 성능
"&&"는 첫 번째 표현식 피연산자 부울 값을 감지하고, 첫 번째 피연산자 표현식이 false를 반환하면 왼쪽의 첫 번째 피연산자 표현식 값을 반환합니다. 그렇지 않으면 false를 계속해서 감지합니다. 오른쪽에 피연산자 표현식을 입력하고 두 번째 피연산자 표현식의 값을 반환합니다.
예: if (a = b) stop(); and (a = b) && stop()
이 메서드는 더 이상 사용되지 않습니다. 연산자 오른쪽의 코드는 실행이 보장되지 않기 때문에
예: if ((a < b) && (b++ <10) ) stop() if 연산자 오른쪽의 증가분 필요한 경우 이전 반환 값으로 인해 실행되지 않을 수 있습니다. &&
Replace "&&"에 다른 함수(할당, 함수 호출, 증가 및 감소)가 포함된 표현식을 사용하는 것은 일반적으로 반대입니다. 부울 대수 연산자로 생각하는 것이 더 간단하고 안전합니다.
(II) "||" 두 피연산자가 모두 부울 값인 경우 논리 OR은 두 부울 값 중 하나가 true이면 결과가 true이고, 그렇지 않으면 false가 반환됩니다. .
참고: 실제 성능
"||"은 첫 번째 피연산자 표현식이 true를 반환하는 경우 왼쪽의 첫 번째 피연산자 표현식 값을 반환합니다. 그렇지 않으면 true입니다. 계속해서 오른쪽의 두 번째 피연산자 표현식을 검색한 다음 두 번째 피연산자 표현식의 값을 반환합니다.
이 메서드도 더 이상 사용되지 않습니다. 왜냐하면 연산자 오른쪽의 코드는 실행이 보장되지 않기 때문입니다.
"||"를 부울 대수 연산자로 간주하는 것이 더 간단하고 안전합니다.
(III) "!" 논리 부정은 피연산자 앞에 배치되는 단항 연산자이며, 그 목적은 피연산자를 부정하는 것입니다.
6. 할당 연산자
(I) "="는 항상 왼쪽의 피연산자가 변수, 배열 요소 또는 객체의 속성일 것으로 기대합니다. 오른쪽의 피연산자는 모든 유형의 임의 값입니다.
오른쪽에서 왼쪽으로의 연관성. 표현식에 여러 대입 연산자가 있는 경우 가장 오른쪽부터 계산이 시작됩니다.
참고: 각 할당 표현식에는 연산자 오른쪽에 있는 값이 있습니다.
(II) 할당 작업을 작업과 함께 사용할 수 있습니다
“+=" 왼쪽 값에 오른쪽 값을 더한 후 왼쪽 값에 할당됩니다. "-=" "/=" "*="에는 동일한 방법이 있습니다.
7. 기타 연산자
"?:" 조건 연산자는 유일한 삼항 연산자입니다.
표현식의 부울 결과입니다. 1(모든 유형의 모든 값): 표현식 2(모든 유형의 모든 값)
첫 번째 피연산자의 부울 결과에 따라 true이면 두 번째 피연산자 표현식이 실행되고, 두 번째 피연산자의 값을 반환합니다. 표현식, 첫 번째 피연산자의 부울 결과가 false인 경우 세 번째 피연산자 표현식을 실행하고 세 번째 피연산자 표현식의 값을 반환합니다.
3. JavaScript 연산자에 대한 참고 사항
1. 연산자에 전달되는 데이터 유형과 반환되는 데이터 유형에 주의하세요! 연산자마다 피연산자 표현식으로 계산된 결과가 특정 데이터 유형을 따르기를 기대합니다.
예: 문자열 곱셈을 수행할 수 없습니다. "a" * "b"는 불법이지만 가능한 경우 JavaScript는 표현식을 올바른 유형으로 변환하므로 " 3" * "5" 표현식이 합법적입니다. JavaScript는 문자열을 숫자로 변환하고 연산을 수행합니다. 결과는 문자열 "15"가 아니라 숫자 15입니다.
2. +는 피연산자에 따라 성능이 다릅니다.
String + String = String(연결됨); "a" + "b" = "ab" "5" + "6" = "11"
String + 숫자 = (숫자로 변환된 문자열) 문자열 (연결됨); "a" + 5 = "a5" 5는 문자열 "1" + 0 = "10"으로 변환됩니다.
숫자 + 숫자 = 숫자(더하기) 5 + 5 = 10.
3. 연산자의 연관성에 주의하세요. 일부 연산자는 왼쪽에서 오른쪽으로 연관됩니다.
예: w = a + b + c는 w = (a + b) + c와 동일합니다.
w = ---b는 w = - ( - ( -b ) )와 동일합니다. = b = c는 w= ( a = ( b = c ))와 동일합니다
단항 연산자, 할당 연산자 및 삼항 연산자의 연관성은 오른쪽에서 왼쪽입니다.
[권장 학습: Javascript 고급 튜토리얼]
위 내용은 JavaScript 연산자는 몇 개입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!