new Function 질문 드립니다.

new Function 질문 드립니다.

QA

new Function 질문 드립니다.

본문

name_a = [aaaa, bbbb, cccc]

 

var test = new Function('return '+name_x)();

 

을 써서 배열값을 가져오고 있는데...

 

name_x의 값 name_a일때는 문제가 없는데 

name_x의 값 name_b가 되어 값이 없을때는 에러가 뜹니다.

 

if문을 써서 값이 있을때만 할려고 해도.. 무조건 에러가 뜹니다.

 

그냥 값이 없으면 if문으로 넘어가기 전에 저 구문에서 에러가 뜹니다.

at HTMLSelectElement.<anonymous>

 

어떻게 해결해야 하나요?

 

 

 

이 질문에 댓글 쓰기 :

답변 1

name_x = [aaaa, bbbb, cccc]

var test = new Function('return '+name_x)();

이럴 때만 test가 값을 갖습니다.

설명이 부족한가 봅니다. 위 코드는 다음과 유사합니다.

var a=1;
var c = a + b;

이렇게 하면 에러가 나죠.
여기서 b가 값이 있는지 없는지 체크하고 싶다는 것이 이해가 안 갑니다.

말씀처럼

var c = a + b; 인데

b가 없을때는
var c = a; 라고 하고 싶은데

어떻게 해야 할지 몰라서 질문드렸습니다.

var test = new Function('return '+name_x)();

if (test == null || test == NaN || test == "")
등으로 없을때를 체크하고 싶은데 var test에서부터 오류가 나버립니다.

name_a = [aaaa, bbbb, cccc]
name_b = [oooo, gggg, eeee]

var test1 = new Function('return '+name_a)();  : 참
var test2 = new Function('return '+name_b)();  : 참
var test3 = new Function('return '+name_c)();  : 거짓

일때 test1, test2는 오류가 안나는데 test3일때 오류가 납니다.
해서 test3일때 오류가 나지 않게 하는 방법을 알고 싶습니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 123,633 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT