JavaScript 기본 개념 (연산 자, 구문, 함수)
valueOf()
을 호출 하여 계산 할 수 없 으 면 toString()
을 호출 합 니 다.일원 조작 부호
한 값 만 조작 할 수 있 는 조작 부 호 를 일원 조작 부호 라 고 한다
체증 과 체감 조작 부호
선행 과 후 치 의 자체 증가 와 자체 감소 연산 자
++
--
은 비 계산 치 의 조작 예 를 들 지 않 았 다.var s1 = "2"
var s2 = "z"
var b = false
var f = 1.1
var o = {
valueOf:function(){
return -1;
}
}
s1++ //3
s2++ //NaN
b++ //1
f-- //0.100000000000009
o--//-2
일원 가감 조작 부호
+
은 수치 앞 에 놓 으 면 영향 을 주지 않 습 니 다. 비수 치 앞 에 놓 으 면 Number()
을 수치 -
으로 전환 하여 음 수 를 표시 하고 비수 치 앞 에 놓 으 면 Number()
을 수치 로 전환 합 니 다.비트 연산 자
ECMAScript
의 수 치 는 모두 64 비트 로 저장 되 지만 비트 연산 자 는 64 비트 값 을 직접 조작 하지 않 고 32 비트 로 전환 한 다음 에 계산 한 다음 에 64 비트 로 전환한다.기호 가 있 는 정수 에 대해 32 위 중 31 위 는 수 치 를 나타 내 고 32 위 는 기호 위 치 를 나타 내 며 0 은 양수 이 고 1 은 마이너스 이다.18 의 이 진 은 00000000000000000000000000010010
또는 10010
을 나타 낸다.음수 도 이 진 코드 로 표시 되 지만 음 수 는 패 치 를 사용한다.추가 코드 를 계산 하 는 절 차 는:-18
의 컴퓨터 바 이 너 리 가 절대 치 를 나타 내 는 바 이 너 리 코드 를 구 합 니 다. 0000 0000 0000 0000 0000 0000 0001 0010
의 반 코드: 1111 1111 1111 1111 1111 1111 1110 1101
에 1: 1111 1111 1111 1111 1111 1111 1110 1110
을 추가 하고 기호 정수 가 있 을 때 31 위 는 방문 할 수 없습니다. 31 위 는 32 위 기본 ECMAScript
에서 정 수 는 모두 기호 정수 가 있 습 니 다. 물론 부호 가 없 는 정수 도 있 고 기호 가 없 는 정수 가 모두 정수 이 며 범위 가 더욱 큽 니 다.64->32->64
이런 방식 의 처 리 는 부작용 을 초래 할 수 있다. NaN
과 Infinity
응용 비트 조작 시 0
으로 처리 된다.(컴퓨터 에서 음수 의 표현법 과 관련 이 있 음) 2. 위치 에 따라 (AND) ~
, 0
은 1
, 1
은 0
, 25
은 -26
, 위치 에 따라 또는 (OR) -26
, 25
은 &
, 1&1
은 1
, 1&0
은 0
, 0&0
은 0
4, 위치 에 따라 다 르 거나 (XOR)|
은 똑 같이 0 이 고 반대로 15, 왼쪽 이동 1|1
이 며 왼쪽 이동 은 기호 위 치 를 옮 기지 않 고 왼쪽 이동 은 n 위 를 옮 기지 않 으 며 수 치 는 2 의 n 차방 6, 오른쪽 이동 1
이다. 이런 오른쪽 이동 도 기호 위 치 를 옮 기지 않 고 오른쪽 이동 n 위, 수치 축소 2 의 n 차방 7, 기호 오른쪽 이동 1|0
이다. 이런 오른쪽 이동 은 기호 위 치 를 옮 길 수 있다. 이 위 치 를 옮 기 는 조작 자 는 모두 0 으로 채 워 지기 때문에 마이너스 이다.수 (기호 위 치 는 1 로 표시) 기호 가 오른쪽으로 이동 하면 정수 가 되 고 기호 가 오른쪽으로 이동 할 수록 수치 가 커진다. 정수 기호 가 오른쪽으로 이동 하면 정상 적 인 오른쪽으로 이동 과 같다.불 연산 자
논리 연산 자
... 이 아니다
1
, 0|0
변 0
, ^
변 <<
, 임의의 유형 에 적용 할 수 있 으 며, 먼저 값 을 >>
유형 으로 변환 합 니 다. 전환 규칙 은 다음 과 같 습 니 다.... 과
>>>
, 진실 은 진실 이 고, 진 위 는 가짜 이 며, 가 짜 는 가짜 이다.혹시
!
, 진짜 와 가짜 가 진짜 이 고 가짜 가 가짜 입 니 다.승 성 조작 부호
곱셈
나눗셈
모형 을 구하 다
가성 조작 부호
덧셈
감법
관계 조작 부호
false
보다 작 으 면 true
보다 크 고 true
보다 작 으 면 false
과 같다.대등 조작 부호
대등 과 불 등
전등화 부전 등
삼 목 연산 자
boolean
할당 연산 자
쉼표 연산 자
문장
if 구문
do - while 문장
while 구문
for 문장
for-in
label
break continue
with
switch
이상 의 물건 은 너무 번 거 로 우 니, 이후 에 천천히 보충 합 시다.
함수.
문법
function ( ){
}
함 수 는 반환 값 형식 을 지정 하지 않 아 도
&&
으로 임 의 값 함수 예제 를 되 돌려 줄 수 있 습 니 다.function abc(a,b,c) {
alert(a+b+c)
}
abc(1,2,3)
return 만 쓰 고 값 을 쓰 지 않 으 면
||
으로 돌아 가 return 을 쓰 지 않 으 면 (, (>)
으로 돌아 갑 니 다.
함수 매개 변수(>=)
함수 매개 변 수 는 하나의 배열 로 (<=)
이 라 고 합 니 다. 함수 호출 은 함수 정 의 를 완전히 따 르 지 않 아 도 되 고 여러 개의 매개 변 수 를 전달 할 수 있 으 며 그 어떠한 매개 변수 도 전달 하지 않 아 도 됩 니 다. ?:
은 배열 과 유사 할 뿐 아래 표 시 된 문법 을 지원 하기 때 문 입 니 다. 예 를 들 어 매개 변수 전송 순서에 따라 순서대로 값 을 추출 할 수 있 습 니 다. return
, undefined
, undefined
, ECMAScript
을 사용 합 니 다.0 속성 은 매개 변수 개 수 를 확정 합 니 다.function abc(a,b,c) {
alert(arguments[0]+arguments[1]+arguments[2])
}
abc(1,2,3)
함수 원형 에 따라 호출 하지 않 음function abc() {
alert(arguments[0]+arguments[1]+arguments[2])
}
abc(1,2,3)
함수 가 리 셋 을 지원 하지 않 지만, 나 는 몇 가지 수단 을 사용 하여 함수 리 셋 을 실현 할 수 있다function doAdd() {
if(arguments.length == 1){
return arguments[0]
}else if(arguments.length == 2){
return arguments[0] + arguments[1]
}else if(arguments.length == 3){
return arguments[0] + arguments[1] + arguments[2]
}
}
alert(doAdd(1))
alert(doAdd(1,2))
alert(doAdd(1,2,3))
arguments 의 값 과 매개 변수 이름 의 값 이 일치 합 니 다.function abc(a) {
a = 100
alert(arguments[0])
}
abc(1)
function abc(a) {
arguments[0] = 100
alert(a)
}
abc(1)
이것 은 arguments
과 arguments
메모리 가 한 부 라 는 것 이 아니 라 사실은 두 부 입 니 다. 다만 js 는 우리 에 게 이 두 값 을 일치 시 켜 주 었 습 니 다. 또한 높 은 거리 에서 파 라 메 터 를 수정 하면 arguments[0]
에 반영 되 지 않 을 것 이 라 고 말 했 습 니 다. 그러나 시험 을 통 해 이런 일 치 는 양 방향 입 니 다. arguments[1]
의 length 속성의 길 이 는 실제 전달 매개 변수 에 의 해 결정 되 는 것 이지 함수 정의 에 의 해 결정 되 는 것 이 아 닙 니 다.정 해 져 있 습 니 다. 입력 값 이 없 는 매개 변 수 는 자동 으로 arguments[2]
으로 대 입 됩 니 다. length
의 모든 매개 변 수 는 값 전달 이 고 인용 전달 이 없습니다. arguments
도 함수 재 업로드 가 지원 되 지 않 으 며 동명 함수 가 다음 에 복 개 됩 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.