>웹 프론트엔드 >JS 튜토리얼 >JavaScript 고급 장 기능(4)_기본 지식

JavaScript 고급 장 기능(4)_기본 지식

WBOY
WBOY원래의
2016-05-16 17:54:35886검색

1. 함수 생성

이전에 사용된 함수가 많아서 더 이상 설명하지 않겠습니다.

2. 중첩 함수

코드 복사 코드는 다음과 같습니다.

function china()
{
function people()//중첩된 함수, 중국에서만 사용합니다
{
document.write("내 소원은 Du Fu가 되는 것입니다. 최근 그의 만화는 online. He Live so free");
}
people();
}

3. 함수의 직접적인 수량

Javascript에서는 함수를 사용할 수 있습니다. 직접 수량 정의는 직설적으로 표현(익명 함수)입니다. 세부사항: 앞으로는 익명 기능이 사용될 예정입니다. 양해해 주시기 바랍니다!
코드 복사 코드는 다음과 같습니다.

function china(people) //함수 선언
{
return peole;
}
var fun = function(people){return people;};//표현식으로 선언됩니다. 효과는 동일합니다

4. 함수 매개변수 (모두 여기서 주목하세요)

선언된 매개변수 개수보다 적은 수로 함수를 호출하면 다른 매개변수는 정의되지 않습니다. 값.
코드 복사 코드는 다음과 같습니다.

//Print 함수
displayArray 함수 (arr)
{
if(!arr)return;
for(var num =0;num{
document.write("숫자는 " arr[num ] "t");
}
document.write(" " "
")
}
var array = [2,32,14,57 ,6] ;
function rentArray(from,/*선택 사항*/to)
{
if(!to) to = []; //to = to||[] 효과는 동일합니다.
for(var element in from) //열거형을 사용하여 배열을 탐색합니다
to.push(from[element]);//배열에 요소 추가
return to;//Return
}
var returnnumber = BorrowArray(array);//실행
displayArray(returnnumber);//인쇄
//출력: Num은 2 Num은 32 Num은 14 Num은 57 Num은 6

5. 변수 매개변수(인수 객체)
이거 처음 봤을 때 매개변수가 왜 바뀌는 걸까요? 참 이상하네요. 예를 들어, A 함수가 3개의 매개변수를 정의하는 경우 인수는 정의한 매개변수와 동일한 데이터 세트를 갖습니다.
참고: 인수 식별자는 함수 본문 내에서만 유효합니다. 함수의 속성이라고 생각하셔도 됩니다!
코드 복사 코드는 다음과 같습니다.

function checkArgument(x,y,z)
{
if(arguments.length != 3) throw new Error("매개변수가 일치하지 않습니다") //매개변수가 적합한지 확인하세요. 매우 유용합니다!
return x y z;
}

다음 예는 숫자의 크기를 비교하는 예이며 매개변수는 변경될 수 있습니다.
코드 복사 코드는 다음과 같습니다.

function CompareMaxNumber()
{
var temp = Number.NEGATIVE_INFINITY; //자바스크립트에서 가장 작은 복수수를 나타냅니다.
for(var arg=0;arg{
if(arguments[arg]> ;temp) temp = 인수[arg];
}
return temp; //매개변수에서 가장 큰 숫자를 반환합니다
}
document.write(compareMaxNumber(2,34,5,23,766, 1000) "
");//여기에는 많은 매개변수가 있을 수 있습니다. 1000을 출력합니다

6. 개체 속성을 매개변수로 사용합니다
코드 복사 코드는 다음과 같습니다.

function displayArray(arr) //Print function
{
if(!arr )return;
for(var num =0;num{
document.write("Num is " arr[num] "t")
document.write(" " "
");
}
//
function copyArray(from,from_start,to,to_start,length)//배열 복사
{
for(var i = from_start; i {
to.push(from[i]);//Filling
}
return to; >}
//getArray accept Object
function getArray(objarray)
{
//다시 캡슐화하고, copyArray를 호출합니다.
return copyArray(objarray.from,objarray.from_start ||0,objarray .to|| [],objarray.to_start ||0,objarray.length);//여기에는 약간의 트릭이 사용됩니다.
}
var arr1 = [1,2,3,4,5]
displayArray(getArray({from:arr1,length:4}));
6. 데이터로서의 기능
코드 복사 코드는 다음과 같습니다.

함수 add( x,y){return x y;}
function multply(x,y){return x*y;}
function cut(x,y){return x -y;}
연산자( Operator1, Operator2,operator3)//3개의 매개변수를 받으며 함수를 매개변수로 사용할 수 있습니다.
{
return Operator1(operator2,operator3);//실행은 add()입니다.
}
document.write(operator(add,operator(multply,2,4),operator( cut,12,2)));//출력 18

7. 함수로서의 메소드

여기서 언급한 메소드는 단지 객체의 속성에 함수를 저장하는 것뿐입니다. . 그런 다음 속성을 통해 호출하면 함수를 모든 변수에 할당할 수 있습니다.
코드 복사 코드는 다음과 같습니다.

var obj = {}; function display( ) //(something) 매개변수 포함
{
return "Love";//something;
}
obj.method = display;//객체 직접 할당을 사용합니다.
obj.method();//호출. obj.method("Love");

사실 자바스크립트에서도 이 키워드를 참조합니다. 모든 사람은 메소드가 호출되는 객체가 this의 값이라는 것을 기억해야 합니다. Object.method(); 여기서 Object는 객체이고 당연히 this의 값입니다.

코드 복사 코드는 다음과 같습니다.
var privatename =
{name: "Frank" ,
age:21,
sex:'male',
display:function()
{document.write("내 이름은:" this.name "t age:" this.age )}};
privatename.display(); //출력 이름: Frank age :21

8. 생성자

new 연산자와 함께 특별히 사용되는 생성자 new 연산자는 객체를 생성한 다음 생성자를 호출하고 새로 생성된 객체를 this의 값으로 전달하고 값을 할당합니다. (이해하기 쉽도록)

코드 복사 코드는 다음과 같습니다.
function createProperty (이름,버전) //생성자
{
this.name = name;
this.version = version
}
var tools = new createProperty("Multply",1.0); 초기화, 도구 이름, 버전

9. 함수 속성 정의

글로벌 불변 값을 사용해야 할 경우 함수 속성을 사용하는 것이 편리합니다. 객체(나중에 네임스페이스 생성, 클래스의 속성이 실제로 여기에 고정됨)

코드 복사 코드는 다음과 같습니다.
createNamespace.name = "360buy.define";
createNamespace.version = 1.2;
function createNamespace()
{
document.write("네임스페이스:" createNamespace.name "버전:" createNamespace .version);
}
createNamespace();//출력: 네임스페이스: 360buy.define 버전: 1.2

10. and call()

이 두 메소드를 사용하면 다른 객체의 메소드를 호출하는 것과 마찬가지로 함수를 호출할 수 있습니다. 두 메소드의 첫 번째 매개변수는 호출할 객체이고, 다음 매개변수는 호출할 함수 매개변수입니다. 라고 불리는.

코드 복사 코드는 다음과 같습니다.
function applyCallOperator(args,args2)
{
document.write(args "
")
}
var objpeople = {};applyCallOperator.apply(objpeople.Frank,[3,4]) ;// applyCallOperator.call(objpeople.Frank,3,4)과 동일합니다. []
objpeople.Frank()


요약: 이 기사는 다음과 같습니다. 여기에서 공유하세요. 다음 이번 글에서는 자바스크립트 클래스를 함께 구현해보겠습니다.
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.