> 백엔드 개발 > PHP 튜토리얼 > javascript - JS 함수에서 []의 의미는 무엇입니까?

javascript - JS 함수에서 []의 의미는 무엇입니까?

WBOY
풀어 주다: 2016-08-25 10:37:18
원래의
1399명이 탐색했습니다.

<code>function returnfunc (propertyName) {
  return function (obj) {             //-----这行定义并返回了一个闭包,也被称之为一个匿名函数
    return obj[propertyName];         //这里用方括号法访问属性,因为属性是变量(returnfunc()函数的参数)
  };
}

var savefunc = returnfunc("name");     //调用returnfunc()
var result = savefunc({name:"Picasso"});//调用savefunc()
alert(result);                        //返回字符串“Picasso”
</code>
로그인 후 복사
로그인 후 복사

실례합니다. 이름:"Picasso"

in savefunc({name:"Picasso"})

답글 내용:

<code>function returnfunc (propertyName) {
  return function (obj) {             //-----这行定义并返回了一个闭包,也被称之为一个匿名函数
    return obj[propertyName];         //这里用方括号法访问属性,因为属性是变量(returnfunc()函数的参数)
  };
}

var savefunc = returnfunc("name");     //调用returnfunc()
var result = savefunc({name:"Picasso"});//调用savefunc()
alert(result);                        //返回字符串“Picasso”
</code>
로그인 후 복사
로그인 후 복사

실례합니다. 이름:"Picasso"

in savefunc({name:"Picasso"})

점과 []는 모두 객체의 속성을 표현하는 방식이지만, 후자는 문자열이라는 점에 유의하세요.
먼저 실행 후 변수가 생성됩니다. var propertyName = "name";
그런 다음

<code>var savrfunc = function(obj){
    return obj[propertyName];
}
</code>
로그인 후 복사

그런 다음 위 함수가 실행되고 반환 값이 결과로 반환됩니다.
내부의 실행 효과는

과 동일합니다.
<code>var obj = {name:"Picasso"};
return obj[propertyName]//上面 已经有这个变了 值是name ;所以就是返回了 obj.name ,相当于把 Picasso给返回出去了。
</code>
로그인 후 복사

.과 기능은 같지만 사용법이 다릅니다

<code>var text ='prop';
var obj = {
  prop:123
};
obj.prop//123
obj.text//undefined
obj[text]//123</code>
로그인 후 복사

propertyName은 속성 이름이고, person[propertyName]은 person['name']입니다.

return obj[propertyName]; //这里用方括号法访问属性,因为属性是变量(returnfunc()函数的请输入代码参数)

댓글에 다 나와있습니다.
객체의 속성에 액세스하는 방법에는 두 가지가 있습니다.

  1. obj.attr 형식, 작성하기 쉬움

  2. obj[attr], 속성 이름은 변수 형식일 수 있습니다

과 []는 모두

객체에 액세스할 수 있습니다.

javascript - JS 함수에서 []의 의미는 무엇입니까?
javascript - JS 함수에서 []의 의미는 무엇입니까?

출처: "JavaScript 표준 참조 튜토리얼(알파)", 작성자: Ruan Yifeng

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿