이전 단어
JavaScript의 대부분의 연산자는 구두점으로 표시되며 일부는 키워드로 표시됩니다. 그들의 구문은 간결하지만 숫자는 상당히 큽니다. 연산자는 항상 고정 된 구문을 따릅니다. 이러한 내용을 이해하고 마스터함으로써 만 운영자는 올바르게 사용할 수 있습니다. 이 기사는 주로 JavaScript 연산자의 구문 개요를 소개합니다.
피연산자 수
JavaScript에는 46 명의 연산자가 있습니다. 피연산자 수에 따라 분류하면 대부분의 이진 연산자입니다. 그들의 피연산자는 2 개이며 두 표현을 복잡한 표현으로 결합합니다.
1 + 2; true || 거짓;
JavaScript의 단술 연산자는 주로 다음 9를 포함하여 하나의 표현식을 약간 복잡한 표현으로 변환합니다.
++ --- + ~! voida ++의 타입 삭제; typeof true;
JavaScript에는 조건부 판단 연산자 인 3 개의조차 연산자가 하나만 있습니다.
2> 1? 2 : 1;
우선 사항
운영자 우선 순위는 연산자의 실행 순서를 제어하며 우선 순위가 높은 연산자 실행은 항상 우선 순위가 낮은 운영자보다 우선합니다.
46 명의 운영자는 14 수준의 우선 순위로 나뉘어져 있습니다.
++ --- + ~! void 유형 삭제 * / % + - << >> >>>> <<=>> = instanceof in ==! = ===! == & ^ | && ||?
이 14 단계 운영자 우선 순위 레벨에서 다음을 볼 수 있습니다.
단색 연산자> 산술 연산자> 비교 연산자> 논리 연산자> 트리 파티 파트 타이트 연산자> 할당 연산자> 쉼표 운영자
[참고] 논리적 역전 연산자는 단독 연산자에 속하며 우선 순위가 가장 높습니다.
예
! 2 <1 && 4*3+1;
위의 상황은 더 복잡하고 점차적으로 운영 순서를 분해합니다.
먼저 외교 연산자를 계산하십시오!,! 2; // false
// 그런 다음 표현식이 거짓이됩니다 <1 && 4*3 + 1;
산술 연산자 4*3+1; // 13을 계산하십시오
// 그런 다음 표현식이 거짓이됩니다 <1 && 13;
비교 연산자 <, false <1; // true를 계산하십시오
// 그러면 표현식이 다음과 같습니다. true && 13; // 13
괄호는 운영 순서를 강제로 지정하는 데 사용될 수 있습니다.
2+3*5; // 17 (2+3)*5; // 25;
본딩
연산자는 두 가지 종류의 바인딩 특성을 가지고 있으며, 하나는 왼쪽에서 오른쪽으로 바인딩되고, 다른 하나는 마크 L과, 다른 하나는 오른쪽에서 왼쪽으로 바인딩되며, 마크 R은 동일한 우선 순위를 가진 여러 연산자 표현식에서 작업 순서를 지정합니다.
대부분의 운영자는 왼쪽에서 오른쪽으로 조합이 있으며, 단독 연산자, 조건부 운영자 및 할당 연산자 만 오른쪽에서 왼쪽으로 조합이 있습니다.
w = x + y + z; // w = ((x + y) + z);
w = x = y = z; // w = (x = (y = z));
Q = A? B : C? D : E? F : g; // 동등한 것 : q = a? b : (c? d : (e? f : g));
운영자의 우선 순위와 구속력은 복잡한 표현에서 운영 순서를 결정하지만, 하위 표현이 상호 영향을 미치면 질서가 변경됩니다.
예
a = 1; b = a +++a-- * a ++;
먼저 표현식을 분석하고 우선 순위의 순서에 따라 증분 연산자, 곱셈 연산자, 추가 연산자 및 할당 연산자가 각각 계산됩니다.
먼저 첫 번째 a ++를 계산하십시오; // 결과는 1, a는 2입니다.
// 표현식은 b = 1+a-- * a ++가됩니다.
a-; // 결과는 2, a는 1입니다
// 표현식은 b = 1+2 * a ++가됩니다.
두 번째 A ++ 계산; // 결과는 1, A는 2입니다.
// 표현식은 b = 1 + 2 * 1이됩니다.
따라서 궁극적으로 a = 2; b = 3;
a = 1; b = a +++a-- * a ++; console.log (a, b); // 2 3
// 유사하게 a = 1; b = a-- * a +++a ++; console.log (a, b); // 2,1
유형
일부 운영자는 모든 데이터 유형에서 작동 할 수 있지만 여전히 피연산자가 지정된 유형의 데이터가되기를 원하며 대부분의 연산자는 특정 유형의 값을 반환합니다. 아래의 연산자 규칙 테이블에서 화살표는 연산자 피연산자의 유형이며 화살표는 화살표가 작동 결과의 유형 인 후 작동 결과의 유형입니다.
【lvalue v
LValue는 고대 용어로, 표현은 운영자의 왼쪽에만 나타날 수 있음을 의미합니다.
JavaScript에서 변수, 객체 속성 및 배열 요소는 모두 lvalues입니다.
피연산자 유형의 증분 연산자 ++, 운영자 감소 및 할당 연산자는 LValue입니다.
var a = 3; a ++; // 33-; // 오류를보고 ({}).운영자 규칙 테이블
연산자 작동 유형 ++ 증분 lval-> num-- 감소 lval-> num- 역 num-> num+ 숫자 num-> num으로 변환 ~ 역 INT-> int! Logical non-bool->booldelete Delete attribute lval->booltypeof Detection type any->strvoid Return undefined any->undef************************************************************/% Multiply, divide, and find the residual num, num-> num-> num- ********************************************************************+-Num-> num+ 문자열 concatenation str, str-> str-> str-> str-> str-> str-> str-> str-> str. Right Shift int, int-> int ********************************************************************* <<=>> = 숫자 주문 번호, num-> bool <<=>> = 알파벳 순서 str, str-> boolinstance test obj, func-> boolin test acttion 비교 str,obj->bool***************************************************************************== Judge equal any,any->bool!= Judge unequal any,any->bool=== Judge the identity any, any->bool!== Judge non-identity any, any->bool********************************************************* & Bitwise and int, int->int************************************************************************ bitwise or int, int-> int-> int ********************************************************************************************************************************************************* || 논리 또는 어떤 것, 어떤 ******************************************************************** : 조건부 운영자 bool, any-> 어떤 ************************************************************************************************************************************************************************************************************************************************************************************** : ******************************************************************************************************************************************************************************************** ******************************************************************************************************************************************************************************************** ******************************************************************************************************************************************************************************************** ******************************************************************************************************************************************************************************************** ******************************************************************************************************************************************************************************************** ******************************************************************************************************************************************************************************************** *********************************************************************************************************************************************************************************************
JavaScript 연산자의 문법에 대한 위의 포괄적 인 개요는 내가 공유하는 모든 내용입니다. 나는 당신이 당신에게 참조를 줄 수 있기를 바랍니다. 그리고 당신이 wulin.com을 더 지원할 수 있기를 바랍니다.