일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 보안
- BOJ
- git
- security
- Python
- machine learning
- dotenv
- TypeScript
- vue.js
- C++
- bash
- scss
- vuetify
- docker
- AI
- webpack
- npm
- property
- type
- var
- loop
- Clone
- 앙상블
- nginx
- generic
- C#
- condition
- leetcode
- JavaScript
- VUE
Archives
- Today
- Total
ice rabbit programming
[JavaScript] Eval과 getOwnPropertyNames() 본문
최근에 웹에서 함수명을 입력받아 실행하고, 그 return 값 object의 함수들을 출력할 일이 있었다.
Eval
string을 code로 실행하여 준다.
var objectName = "myObject.";
var methodName = "getProperty()";
var executeCode = objectName+methodName;
eval(executeCode); // myObject.getProperty()가 실행된다.
즉, input 태그로 함수명을 입력하면 해당 함수를 실행할 수 있다.
getOwnPropertyNames()
getOwnPropertyNames는 객체의 모든 속성(Property)의 이름을 반환한다. 즉, 배열이면 원소들을 반환하고 클래스는 멤버들을 반환한다.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyNames에 있는 예제를 보면,
const object1 = {
a: 1,
b: 2,
c: 3
};
console.log(Object.getOwnPropertyNames(object1));
// output: Array ["a", "b", "c"]
사용은 위와 같이 Object.getOwnPropertyNames()에 인자로 사용할 객체를 넣으면 된다.
'Development > JavaScript' 카테고리의 다른 글
[Node.js] npm cache 해결 (3) | 2020.09.27 |
---|---|
[JS] JavaScript의 기본 문법 (0) | 2020.06.06 |
[JS] 데이터 타입의 프로퍼티와 메소드 (0) | 2020.05.27 |
[JS] 자바스크립트의 데이터 타입(2) (0) | 2020.05.10 |
[JS] JS의 간략한 소개와 데이터 타입(1) (0) | 2020.05.04 |