함수 표현식
함수 정의 표현식은 자바스크립트 함수를 정의합니다. 표현식의 값은 새로 정의된 함수입니다. 어떤 의미에서 함수 정의 표현식은 함수 리터럴이 될 수 있고, 함수 표현식은 "함수 리터럴"이라고 할 수 있습니다. 결국 객체 초기화 표현식은 "객체 리터럴"이라고도 합니다. 일반적인 함수 정의 표현식에는 function 키워드와 그 뒤에 괄호 쌍이 포함됩니다. 괄호 안에는 0개 이상의 식별자(매개변수 이름)가 포함된 쉼표로 구분된 목록이 있습니다. 그런 다음 중괄호로 묶인 JavaScript 코드 세그먼트(함수 본문)를 따릅니다.
var square = function(x){ return x*x};
속성 액세스 표현식
속성 액세스 표현식 작업은 객체 또는 배열 요소의 값을 가져옵니다. JavaScript는 속성 액세스를 위한 두 가지 방법을 정의합니다.
expression . indentifier expression [expression]
첫 번째 작성 방법은 마침표와 식별자 뒤에 표현식을 작성하는 것입니다. 표현식은 객체를 지정하고 식별자는 액세스할 속성을 지정합니다.
2장은 대괄호를 사용하여 작성되었으며, 대괄호 안에는 표현식이 있습니다. (이 방법은 객체 및 배열에 적용됩니다.) 두 번째 표현식은 액세스할 속성의 인덱스를 지정하거나 액세스할 배열 요소의 인덱스를 나타냅니다. 다음은 몇 가지 구체적인 예입니다. 속성 액세스 표현식의 어떤 형식을 사용하든 "." 앞에는 표현식이 사용됩니다. "["는 항상 먼저 평가됩니다. 표현식이 null 또는 정의되지 않은 것으로 평가되면 두 값 모두 속성을 포함할 수 없기 때문에 표현식에서 TypeError 예외가 발생합니다. 연산 결과가 객체나 배열이 아닌 경우 JavaScript는 이를 객체로 변환합니다(3장, 6절)
Math.max(x,y,z) //Math.max는 함수입니다. x, y 및 z는 매개변수입니다.
a.sort() //a.sort()는 함수이며 매개변수가 없습니다.평가를 위해 표현식이 호출되면 함수 표현식이 먼저 계산된 다음 매개변수 표현식이 계산되어 매개변수 값 세트를 얻습니다. 함수 표현식의 값이 호출 가능한 객체가 아닌 경우 유형 오류 예외가 발생합니다. 그러면 매개변수의 값이 함수 정의 시 정의되는 형식 매개변수에 차례로 할당됩니다. 다음으로 함수 본문을 실행합니다. 함수가 return 문을 사용하여 반환 값을 제공하는 경우 반환 값은 전체 호출 식의 값입니다. 그렇지 않으면 호출 표현식의 값이 정의되지 않습니다. 공식 매개변수 표현식의 수가 함수 정의의 실제 매개변수 수와 일치하지 않을 때 발생하는 일을 포함하여 함수 호출에 대한 자세한 내용은 8장에서 설명합니다.
모든 호출 표현식에는 한 쌍의 괄호와 왼쪽 괄호 앞의 표현식이 포함됩니다. 표현식이 속성 액세스 표현식인 경우 해당 호출을 "메서드 초대"라고 합니다. 메서드 호출에서 함수 본문이 실행될 때 본문에 액세스하기 위한 특성으로 사용되는 개체 및 배열은 호출 메서드에서 이 지점입니다. 이 기능을 사용하면 객체지향 프로그래밍 패러다임에서 함수(OO 이름이 "메서드")가 호스트 객체를 호출할 수 있습니다
o.x //=>1表达式o的x属性 o.y.z //=>3 表达式o.y的z属性 o.["x"] //=>1的对象o的x属性 a[1] //=>4 表达式a索引为1的元素 a[2]["1"]//=>6 表达式a[2]中索引为1的元素 a[0].x //=>1: 表达式a[0]的x属性
위 내용은 자바스크립트 함수, 속성, 객체 생성 표현식에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!