>웹 프론트엔드 >JS 튜토리얼 >JavaScript 입문 튜토리얼(3) js 객체 지향_기본 지식

JavaScript 입문 튜토리얼(3) js 객체 지향_기본 지식

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-05-16 18:56:30900검색

JavaScript 是使用“对象化编程”的,或者叫“面向对象编程”的。所谓“对象化编程”,意思是把 JavaScript 能涉及的范围划分成大大小小的对象,对象下面还继续划分对象直至非常详细为止,所有的编程都以对象为出发点,基于对象。小到一个变量,大到网页文档、窗口甚至屏幕,都是对象。这一章将“面向对象”讲述 JavaScript 的运行情况。
对象的基本知识
对象是可以从 JavaScript“势力范围”中划分出来的一小块,可以是一段文字、一幅图片、一个表单(Form)等等。每个对象有它自己的属性方法事件。对象的属性是反映该对象某些特定的性质的,例如:字符串的长度、图像的长宽、文字框(Textbox)里的文字等等;对象的方法能对该对象做一些事情,例如,表单的“提交”(Submit),窗口的“滚动”(Scrolling)等等;而对象的事件就能响应发生在对象上的事情,例如提交表单产生表单的“提交事件”,点击连接产生的“点击事件”。不是所有的对象都有以上三个性质,有些没有事件,有些只有属性。引用对象的任一“性质”用“<对象名>.<性质名>”这种方法。

基本对象
现在我们要复习以上学过的内容了——把一些数据类型用对象的角度重新学习一下。
Number “数字”对象。这个对象用得很少,作者就一次也没有见过。不过属于“Number”的对象,也就是“变量”就多了。

속성
MAX_VALUE 사용법: Number.MAX_VALUE; "최대값"을 반환합니다.
MIN_VALUE
사용법: Number.MIN_VALUE; "최소값"을 반환합니다.
NaN
사용법: Number.NaN 또는 NaN은 "NaN"을 반환합니다. "NaN"(숫자 아님)은 아주 초기에 도입되었습니다.
NEGATIVE_INFINITY
사용법: Number.NEGATIVE_INFINITY; 반환: 음의 무한대, "최소값"보다 작은 값.
POSITIVE_INFINITY
사용법: Number.POSITIVE_INFINITY 반환: 양의 무한대, "최대값"보다 큰 값.
메서드
toString() 사용법: <숫자 변수>.toString() 반환: 문자열 형식의 숫자 값. 예를 들어, a == 123;이면 a.toString() == '123'입니다.
문자열 문자열 개체입니다. 문자열 개체를 선언하는 가장 간단하고 빠르며 효과적이며 일반적으로 사용되는 방법은 개체를 직접 할당하는 것입니다.
속성
length 사용법: .length;
메서드
charAt() 사용법: .charAt(); 비트의 성격. 참고: 문자열의 한 문자는 위치 0에 있고, 두 번째 문자는 위치 1에 있으며, 마지막 문자는 위치 길이 - 1에 있습니다.
charCodeAt()
사용법: .charCodeAt(); 위치에 있는 문자열의 단일 문자에 대한 ASCII 코드를 반환합니다.
fromCharCode()
사용법: String.fromCharCode(a, b, c...); 각 문자의 ASCII 코드가 a, b, c..로 구성된 문자열을 반환합니다. 확실해질 때까지 기다리세요.
indexOf()
사용법: .indexOf([, ]); 이 메소드는 <다른 문자열 객체> ; 문자열 object>에서 (이 주어지면 이전 위치를 무시합니다), 발견되면 해당 위치를 반환하고, 발견되지 않으면 "- 1"을 반환합니다.모든 "위치"는 처음부터 시작됩니다.
lastIndexOf()
사용법: .lastIndexOf([, ]); indexOf() 와 유사하지만 뒤에서부터 살펴봅니다. .
split()
사용법: .split(); 에서 분리된 배열을 반환합니다. 포인트 자체는 반환된 배열에 포함되지 않습니다. 예를 들어 '1&2&345&678'.split('&')은 배열 1,2,345,678을 반환합니다. 배열에 관해서는 잠시 후에 논의하겠습니다.
substring()
사용법: .substring([, ]); 원래 문자열의 하위 문자열을 반환합니다. 문자는 세그먼트입니다. 원래 문자열의 위치에서 위치의 이전 위치까지입니다. - = 문자열의 길이를 반환합니다. 가 지정되지 않거나 문자열 길이를 초과하는 경우 하위 문자열은 위치에서 원래 문자열의 끝까지 가져옵니다. 지정된 위치에서 문자열을 반환할 수 없으면 빈 문자열이 반환됩니다.
substr()
사용법: .substr([, ]); 원래 문자열의 하위 문자열을 반환합니다. 문자는 섹션입니다. 위치에서 시작하여 의 길이를 갖는 원본 문자열입니다. 가 지정되지 않거나 문자열 길이를 초과하는 경우 하위 문자열은 위치에서 원래 문자열의 끝까지 가져옵니다. 지정된 위치에서 문자열을 반환할 수 없으면 빈 문자열이 반환됩니다.
toLowerCase()
사용법: .toLowerCase(); 원래 문자열의 모든 대문자가 소문자로 변경된 문자열을 반환합니다.
toUpperCase() 사용법: .toUpperCase(); 원래 문자열의 모든 소문자를 대문자로 변경한 문자열을 반환합니다.
배열 배열 객체입니다. 배열 객체는 객체의 컬렉션이며 내부 객체는 다른 유형일 수 있습니다. 배열의 각 구성원 개체에는 배열에서의 위치를 ​​나타내는 데 사용되는 "아래 첨자"가 있습니다("위치"이므로 0부터 시작함).
배열을 정의하는 방법:
var = new Array();
빈 배열을 정의합니다. 나중에 배열 요소를 추가하려면 다음을 사용하세요.
<배열 이름>[] = ...;
여기서 대괄호는 "생략 가능"을 의미하지 않습니다. 배열의 아래 첨자는 대괄호를 사용하여 표현됩니다. .
배열 정의 시 데이터를 직접 초기화하려면 다음을 사용하세요.
var = new Array(, , ...);
예: var myArray = new Array( 1, 4.5 , 'Hi'); 배열 myArray를 정의합니다. 내부 요소는 다음과 같습니다: myArray[0] == 1; myArray[2] == 'Hi'.
그러나 요소 목록에 요소가 하나만 있고 이 요소가 양의 정수인 경우 이는 <양의 정수>
참고: JavaScript에는 1차원 배열만 있습니다! 4 x 5 2차원 배열을 정의하기 위해 "Array(3,4)"라는 어리석은 메서드를 사용하거나 "2차원 배열"의 요소를 반환하기 위해 "myArray[2,3]" 메서드를 사용하지 마십시오. "myArray[...,3]" 형식을 호출하면 실제로는 "myArray[3]"만 반환됩니다.다차원 배열을 사용하려면 다음 더미 메서드를 사용하세요.
var myArray = new Array(new Array(), new Array(), new Array(), ...);
사실 이는 1차원 배열이며, 그것은 배열입니다. 이 "2차원 배열"의 요소를 호출하는 경우: myArray[2][3] = ...;
속성
length 사용법: .length; 반환값: 배열의 길이, 즉 배열에 있는 요소 수. 배열의 마지막 요소 인덱스에 1을 더한 것과 같습니다. 따라서 요소를 추가하려면 다음과 같이 하면 됩니다. myArray[myArray.length] = ....
메서드
join() 사용법: .join(); 를 사용하여 요소 사이에 배치합니다. 이 방법은 배열의 원래 내용에 영향을 주지 않습니다.
reverse()
사용법: .reverse(); 배열의 요소 순서를 바꿉니다. 배열 [1, 2, 3]에 이 방법을 사용하면 배열이 [3, 2, 1]이 됩니다.
slice()
사용법: .slice([, ]); <시작> 및 <끝>으로 끝납니다. 가 지정되지 않으면 원래 배열의 끝까지 하위 집합이 사용됩니다.
sort()
사용법: .sort([]); 배열의 요소를 특정 순서로 정렬합니다. 이 지정되지 않은 경우 알파벳 순서가 사용됩니다. 이 경우 80은 9보다 높은 순위입니다. 을 지정하면 에 지정된 정렬 방법이 정렬됩니다. <메소드 함수> 여기서는 몇 가지 유용한 <메소드 함수>를 소개합니다.
오름차순으로 숫자 정렬:
function sortMethod(a, b) {
return a - b;
}

myArray.sort(sortMethod);
숫자를 내림차순으로 정렬합니다. 위의 "a - b"는 "b - a"가 되어야 합니다.
기능은 아래를 참고하세요.
Math 데이터에 대한 수학적 계산을 제공하는 "수학" 개체입니다. 아래에 언급된 속성과 메소드는 "사용법"을 자세히 설명하지 않습니다. 사용 시 "Math." 형식을 사용하는 것을 잊지 마세요.
속성
E 상수 e(2.718281828...)를 반환합니다.
LN2
2의 자연로그(ln 2)를 반환합니다.
LN10
10의 자연 로그(ln 10)를 반환합니다.
LOG2E
낮은 값이 2인 e(log2e)의 로그를 반환합니다.
LOG10E
낮은 값이 10인 e의 로그를 반환합니다(log10e).
PI
는 π(3.1415926535...)를 반환합니다.
SQRT1_2
1/2의 제곱근을 반환합니다.
SQRT2
2의 제곱근을 반환합니다.
메서드
abs(x) x의 절대값을 반환합니다.
acos(x)
라디안으로 표시되는 x의 역코사인(코사인은 x의 각도와 같음)을 반환합니다.
asin(x)
x의 아크사인을 반환합니다.
atan(x)
x의 아크탄젠트를 반환합니다.
atan2(x, y)
복소 평면의 점(x, y)에 해당하는 복소수의 인수를 반환하며 라디안으로 표시되며 그 값은 -π와 π 사이입니다.
ceil(x)
x보다 크거나 같은 가장 작은 정수를 반환합니다.
cos(x)
x의 코사인을 반환합니다.
exp(x)
e의 x승을 반환합니다(ex).
floor(x)
x보다 작거나 같은 가장 큰 정수를 반환합니다.
log(x)
x(ln x)의 자연 로그를 반환합니다.
max(a, b)
a, b 중 더 큰 수를 반환합니다.
min(a, b)
a, b 중 작은 수를 반환합니다.
pow(n, m)
n의 m승(nm)을 반환합니다.
random()
0보다 크고 1보다 작은 임의의 숫자를 반환합니다.
round(x)
x의 반올림된 값을 반환합니다.
sin(x)
x의 사인을 반환합니다.
sqrt(x)
x의 제곱근을 반환합니다.
tan(x)
x의 탄젠트를 반환합니다.
날짜 날짜 개체입니다. 이 객체는 0001부터 9999까지의 날짜를 저장할 수 있으며 밀리초(1/1000초)까지 정확할 수 있습니다. 내부적으로 날짜 객체는 1970년 1월 1일 자정부터 날짜 객체가 가리키는 날짜까지의 밀리초 수를 나타내는 정수입니다. 언급된 날짜가 1970년 이전이면 음수입니다. 모든 날짜와 시간은 시간대가 지정되지 않은 경우 "GMT"(그리니치 표준시)와 수치적으로 동일한 "UTC"(세계시) 시간대를 사용합니다.
날짜 객체 정의:
var d = new Date;
이 메소드는 d를 날짜 객체로 만들고 초기 값은 현재 시간입니다. 초기 값을 사용자 정의하려면 다음을 사용할 수 있습니다.
var d = new Date(99, 10, 1); //1999년 10월 1일
var d = new Date('1999년 10월 1일') //1999년 10월 1일
등. 가장 좋은 방법은 아래에 소개된 "방법"을 사용하여 시간을 엄격하게 정의하는 것입니다.
메서드
아래 "g/set[UTC]XXX"와 같이 여러 가지 메서드가 있는데, 이는 "getXXX" 메서드와 "setXXX" 메서드가 모두 있다는 의미입니다. "Get"은 특정 값을 가져오는 것이고 "set"은 특정 값을 설정하는 것입니다. "UTC" 문자가 있으면 획득/설정된 값이 UTC 시간을 기준으로 함을 의미하고, 문자가 없으면 현지 시간 또는 검색 기간의 기본 시간을 기준으로 함을 의미합니다.
설명이 없는 경우 메소드의 사용 형식은 "."이며 아래와 동일합니다.
g/set[UTC]FullYear() 4자리로 표시되는 연도를 반환/설정합니다. "x.set[UTC]FullYear(99)"를 사용하면 연도가 0099로 설정됩니다.
g/set[UTC]Year()
연도를 두 자리로 표시하여 반환/설정합니다. 설정 시 브라우저는 자동으로 처음에 "19"를 추가하므로 "x.set[UTC]Year(00)"을 사용하여 연도를 1900으로 설정합니다.
g/set[UTC]Month()
월을 반환/설정합니다.
g/set[UTC]Date()
날짜를 반환/설정합니다.
g/set[UTC]Day()
요일을 반환/설정하며, 0은 일요일을 의미합니다.
g/set[UTC]Hours()
시간을 반환/설정하며, 24시간 형식입니다.
g/set[UTC]분()
분을 반환/설정합니다.
g/set[UTC]Seconds()
초 수를 반환/설정합니다.
g/set[UTC]Milliseconds()
밀리초 수를 반환/설정합니다.
g/setTime()
날짜 객체의 내부 처리 방식인 시간을 반환/설정합니다. 1970년 1월 1일 0시부터 개체가 가리키는 날짜까지 계산한 밀리초입니다. 날짜 객체 번호. 날짜 객체가 가리키는 시간을 1시간 지연시키려면 다음을 사용하세요: "x.setTime(x.getTime() 60 * 60 * 1000);" (1시간 60분, 1분 60초, 1초 1000 밀리초).
getTimezoneOffset()
날짜 개체가 사용하는 시간대와 그리니치 표준시 간의 차이(분)를 반환합니다. 그리니치 동쪽 도시 지역에서는 값이 음수입니다. 예를 들어 중국 시간대(GMT 0800)는 "-480"을 반환합니다.
toString()
날짜 객체가 가리키는 날짜를 설명하는 문자열을 반환합니다. 이 문자열의 형식은 "2000년 7월 21일 금요일 15:43:46 UTC 0800"과 유사합니다.
toLocaleString()
날짜 객체가 가리키는 날짜를 설명하는 문자열을 현지 시간 형식으로 반환합니다. 예: "2000-07-21 15:43:46".
toGMTString()
날짜 객체가 가리키는 날짜를 설명하는 문자열을 GMT 형식으로 반환합니다.
toUTCString()
날짜 객체가 가리키는 날짜를 설명하는 문자열을 UTC 형식으로 반환합니다.
parse()
사용법: Date.parse(); 날짜 객체의 내부 표현식을 반환합니다.


전역 객체
전역 객체는 절대 등장하지 않는다고 할 수 있습니다. "객체" 변경"으로 기능합니다. Microsoft JScript 언어 참조에서는 이를 "전역 개체"라고 부르지만 해당 메서드와 속성은 "Global.xxx"로 참조되지 않고(그러면 오류가 발생함) 직접 "xxx"로 참조됩니다.
속성
NaN 아까 말했잖아요.
Methods
eval() 괄호 안의 문자열을 표준 명령문이나 표현식으로 연산합니다.
isFinite()
괄호 안의 숫자가 "유한"(Number.MIN_VALUE와 Number.MAX_VALUE 사이)이면 true를 반환하고, 그렇지 않으면 false를 반환합니다.
isNaN()
대괄호 안의 값이 "NaN"이면 true를 반환하고 그렇지 않으면 false를 반환합니다.
parseInt()
괄호 안의 내용을 정수로 변환한 값을 반환합니다. 대괄호가 문자열이면 문자열 시작 부분의 숫자 부분이 정수로 변환되고, 문자로 시작하면 "NaN"이 반환됩니다.
parseFloat()
괄호 안의 문자열을 부동 소수점 숫자로 변환한 후 값을 반환합니다. 문자열 시작 부분의 숫자 부분이 문자로 시작하는 경우 부동 소수점 숫자로 변환됩니다. , "NaN"이 반환됩니다.
toString() 사용법: .toString(); 객체를 문자열로 변환합니다. 괄호 안에 값을 지정하면 변환 과정에서 모든 값이 특정 베이스로 변환됩니다.
escape() 대괄호 안의 문자열로 인코딩된 새 문자열을 반환합니다. 이 인코딩은 URL에 적용됩니다. 즉, 공백은 " " 형식으로 작성됩니다. " "은(는) 인코딩되지 않았습니다. " "을(를) 인코딩하려면 다음을 사용하십시오: escape('...', 1).
unescape()는 escape()의 반대 과정입니다. 괄호 안의 문자열을 일반 문자열로 디코딩합니다.

함수함수 정의
소위 "함수"에는 리턴이 있습니다. value 개체 또는 개체의 메서드입니다.
함수 유형
일반적인 함수는 다음과 같습니다. 배열을 생성할 수 있는 생성자(예: 전역 개체의 메서드) 전역 함수 ; 자체 정의 기능 등
사용자 정의 함수
함수를 정의하려면 다음 명령문을 사용하세요.
함수 함수 이름([매개변수 집합]) {
...
[return[ ];]
...
}
여기서 , 함수 뒤와 함수 끝에 사용되는 중괄호는 전체 함수에 한 문장만 있어도 생략할 수 없습니다.
함수 이름에는 변수 이름과 동일한 명명 규칙이 있습니다. 즉, 문자, 숫자, 밑줄, 선행 문자만 포함하고 예약어는 반복할 수 없습니다.
매개변수 집합은 선택사항이지만 괄호는 반드시 있어야 합니다.
매개변수는 함수 외부에서 함수 내부로 정보를 전달하는 브리지입니다. 예를 들어 함수에 3의 세제곱을 반환하도록 요청하려면 다음을 수행해야 합니다. 함수는 "3"이라는 값을 알고 있습니다. 이때 값을 받는 변수를 매개변수라고 합니다.
매개변수 세트는 a, b, c와 같이 쉼표로 구분된 하나 이상의 매개변수 세트입니다.
함수 안에는 한 줄 이상의 명령문이 있습니다. 이 명령문은 즉시 실행되지 않고 다른 프로그램이 호출할 때만 실행됩니다. 이러한 문에는 "return" 문이 포함될 수 있습니다. 함수를 실행할 때 return 문을 만나면 함수는 즉시 실행을 중지하고 이를 호출한 프로그램으로 돌아갑니다. "return" 뒤에 가 오면 함수를 종료할 때 값이 반환됩니다.
함수 내에서 매개변수를 변수로 직접 사용할 수 있고, var 문을 사용하여 일부 새로운 변수를 생성할 수 있지만 이러한 변수는 함수 외부의 프로시저에서 호출할 수 없습니다. 함수 내부의 정보를 외부에서 호출하려면 "반환" 반환 값을 사용하거나 전역 변수를 사용하세요.
전역 변수 스크립트의 "루트"(함수 내부가 아님)에서 "var" 문으로 정의된 변수는 전체 프로세스의 어디에서나 호출하고 변경할 수 있는 전역 변수입니다.

function addAll(a, b, c) {
return a b c;
}

var total = addAll(3, 4, 5)
이 예에서는 세 개의 매개변수(a, b, c)가 있는 "addAll"이라는 함수가 생성됩니다. 이 함수의 기능은 세 개의 숫자를 더한 결과를 반환하는 것입니다. 함수 외부에서 "var total = addAll(3, 4, 5);"를 사용하여 함수의 반환 값을 받습니다.
함수에는 반환 값이 없는 경우가 더 많습니다. Basic 언어의 "Sub", Pascal 언어의 "procedure"와 같이 엄격함을 강조하는 일부 언어에서는 이러한 종류의 함수를 "procedure"라고 합니다.
속성
인수 외부 프로그램이 함수를 호출할 때 지정된 매개변수를 반영하는 배열입니다. 사용법: 함수 내에서 직접 "인수"를 호출합니다.
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.