컨텐츠로 건너뛰기

스크립트 기초 정보

연산자

항목설명
+
덧셈
변수 두 개를 덧셈합니다. .
예시: 3 + 4 결과는 7.
-
뺄셈
좌측 변수에서 우측 변수를 뺄셈합니다.
예시: 7 - 3 결과는 4.
*
곱셈
변수 두 개를 곱셈합니다.
예시: 3 * 4 결과는 12.
/
나눗셈
좌측 변수를 우측 변수로 나눗셈합니다.
예시: 7/7 결과는 1.
%
나머지
좌측 변수를 우측 변수로 나눈 뒤의 나머지를 반환합니다.
예시: 4/3 결과는 1.
&&
논리 AND
두 변수 모두 true 라면 true를 반환합니다. 둘 중 하나라도 false 라면 false를 반환합니다.
예시: A = true, B = false, A && B 결과는 false.
||
논리 OR
두 변수 중 하나라도 true 라면 true를 반환합니다. 둘 다 false 라면 false를 반환합니다.
예시: A = true, B = false, A || B 결과는 true.
!
논리 NOT
변수를 반전시킵니다.
예시: A = true, !A 결과는 false.
<
미만
좌측 변수가 우측 변수보다 작으면 true, 같거나 크면 false를 반환합니다.
예시: A = 3, B = 4, A < B 결과는 true.
>
초과
좌측 변수가 우측 변수보다 크면 true, 같거나 작으면 false를 반환합니다.
예시: A = 3, B = 4, A > B 결과는 false.
<=
이하
좌측 변수가 우측 변수보다 같거나 작으면 true, 크면 false를 반환합니다.
예시: A = 4, B = 4, A <= B 결과는 true.
>=
이상
좌측 변수가 우측 변수보다 같거나 크면 true, 작으면 false를 반환합니다.
예시: A = 5, B = 7, A >= B 결과는 false.
==
동등
두 변수가 동등한 값을 지니면 true, 아니면 false를 반환합니다.
예시: A = 5, B = 5, A == B 결과는 true.
===
일치
두 변수가 동일한 타입이고 동일한 값을 지니면 true, 아니면 false를 반환합니다.
예시: A = 1, B = '1', A === B 결과는 false.
!=
부등
두 변수의 값이 다르면 true, 아니면 false를 반환합니다.
예시: A = 2, B = 3, A != B 결과는 true.
in객체 내에 지정한 속성이 존재하는지 확인합니다.
예시: myObj = {a: 1, b: 2, c: 3};
if ('a' in myObj) {
notification.send('Property "a" exists in myObj.');
}
else {
notification.send('Property "a" does not exist in myObj.');
}

결과는 'Property "a" exists in myObj' 알림이 실행됩니다.
=
대입
변수에 값을 대입합니다.
예시: A = 5
A 호출 시 A에는 값 5가 저장되어 있습니다.
+=
더하기 대입
좌측 변수에 우측 변수의 값을 더한 값을 대입합니다.
예시: A = 5;
A+= 2;

A 결과는 7.
-=
빼기 대입
좌측 변수에서 우측 변수의 값을 뺀 값을 대입합니다.
예시: A = 5;
A -= 2;

A 결과는 3.
*=
곱하기 대입
좌측 변수에 우측 변수의 값을 곱한 값을 대입합니다.
예시: A = 5;
A *= 2;

A 결과는 10.
/=
나누기 대입
좌측 변수를 우측 변수로 나눈 값을 좌측 변수에 대입합니다.
예시: A = 5;
A *= 2;

A 결과는 10.
++
증가
변수에 1을 더합니다.
예시: A = 2;
A++;

A 결과는 3.
- -
감소
변수에서 1을 뺍니다.
예시: A = 2;
A- -;

A 결과는 1.
~
비트 NOT
변수에 저장된 값의 모든 비트를 전환합니다.
예시: A = 3 (0000 0000 0000 0011)

A = ~A;
A의 비트는 1111 1111 1111 1100 입니다. (10진수 값 65532)
&
비트 AND
비트 단위의 논리 AND 연산을 수행합니다.
예시: A = 3, B = 4
A & B;

결과는 0.
|
비트 OR
비트 단위의 논리 OR 연산을 수행합니다.
예시: A = 3, B = 4
A | B

결과는 7.
^
비트 XOR
비트 단위의 논리 XOR 연산을 수행합니다.
예시: A = 3, B = 4
A ^ B

결과는 7.
<<
비트 왼쪽 시프트
왼쪽 변수의 비트를 오른쪽 변수의 값만큼 왼쪽으로 시프트합니다. 왼쪽으로 넘치는 비트는 버리고 오른쪽의 비트는 0으로 채웁니다.
예시: A = 2, B = 5
A << B

결과는 64.
>>
비트 오른쪽 시프트 (부호있음)
왼쪽 변수의 비트를 오른쪽 변수의 값만큼 오른쪽으로 시프트합니다. 오른쪽으로 넘치는 비트는 버리고 왼쪽은 제일 큰 비트의 값으로 채웁니다.
예시: A = 2, B = 5
A >> B
결과는 0.
>>>
비트 오른쪽 시프트 (부호없음)
왼쪽 변수의 비트를 오른쪽 변수의 값만큼 오른쪽으로 시프트합니다. 오른쪽으로 ㄴ머치는 비트는 버리고, 왼쪽은 0으로 채웁니다.
예시: A = 2, B = 5
A >>> B

결과는 0.
typeof변수의 데이터 타입을 반환합니다.
예시: A = 2;
typeof A;

결과는 "number".
void표현식을 평가하지만 값을 반환하지는 않도록 설정합니다.
예시: void function foo() { notification.send("in foo"); }();

지정되지 않은 값 (undefined) 을 반환합니다.
new사용자가 생성한 객체, 날짜, 어레이 등의 새 인스턴스를 생성합니다.
예시: var oldTime = new Date("Dec 31 1999");
oldTime.getFullYear(); // 1999
var currentTime = new Date();
currentTime.getFullYear(); // returns the current year

새 인스턴스의 Date를 생성합니다.
delete객체에서 속성을 삭제합니다.
예시: var resident = { firstName: 'John', lastName: 'Smith'};
notification.send(JSON.stringify(resident));
// {"firstName": "John", "lastName": "Doe"}
delete resident.firstName;
notification.send(JSON.stringify(resident));
// {"lastName":"Doe"}

resident 에서 firstName을 삭제합니다.
,각 피연산자를 왼쪽에서 오른쪽 순서로 평가하고, 마지막 연산자의 값을 반환합니다.
예시:
var s = "";
for (var i = 1, j = -1; i <= 3; i++, j- -) { s += "i: " + String(i) + ", "; s += "j: " + String(j); s += "\n"; }
notification.send(s);
// i: 1, j: -1
// i: 2, j: -2
// i: 3, j: -3
?…:a ? b : c 형식으로 사용하는 조건 연산자입니다. a가 참일 경우 b를 반환하며, a가 거짓일 경우에는 c를 반환합니다.
예시: var isOn = tag.read("checkLight");
var s = isOn ? "Light is on.": "Light is off.";
notification.send(s);

키워드

항목설명
if…else조건이 참일 때 if 문을 실행하고 아닐 때 else 문을 실행합니다.
while조건이 참일 때 실행할 반복문입니다. 조건이 거짓이 될 때 멈춥니다.
do…while특정 조건이 거짓으로 판별될때까지 반복합니다.
for지정된 조건이 거짓이 될 때까지 지정된 숫자만큼 반복합니다.
break반복문 (while, for, switch) 에서 벗어납니다.
continue현재 반복문을 종료하고 다음 반복문으로 넘어갑니다.
switch…case표현식 평가 후 일치하는 case의 명령문을 실행합니다. 일치하는 case가 없으면 기본 case를 실행합니다.
defaultSwitch 문에서 기본값이 될 명령문을 입력합니다.
function특정 동작을 수행하고자 하는 코드의 한 블록을 정의합니다.
return동작을 끝내고 값을 반환합니다.
argumentsfunction 내에서 사용할 값을 지정합니다.
try…catch실행을 시도할 블록을 표시하고, 그 안에서 예외가 발생할 경우 처리를 맡을 하나 이상의 반응 명령문을 지정합니다.
throw예외 객체를 던집니다.