2011-10-19 4 views
1

개체 (함수가 있음)와 일부 데이터 및 args를 보낼 수있는 작은 라이브러리를 만들고 개체, 데이터 및 arg를 작업자 프로세스로 보냅니다. 이 함수는 함수를 포함하는 오브젝트를 캐릭터 라인 화한다함수 계산하기

JSON.stringify(object, function(key, val) { if typeof val === 'function' { return val + '' } return val });

: 다음

(문자열 함수로부터) 기능을 재구성 객체를 평가 후면 것 현재 I이있다.

내 작업자는이 프로세스를 실행 취소하려고합니다.

나는 다음과 같은 시도 : eval(object) 나는 또한 내가 하나 건너 경우) (각 기능을 평가 후면 시도와 JSON.parse를 구현하는 노력했다.

또한 eval("return " + object.function)

은이게 가능 시도?

+0

거의 항상 eval을 사용하는 것이 좋습니다. –

+1

달성하려는 목표는 무엇입니까? 나는이 문제의 뒤에 문제를 의미한다. – stivlo

+0

웹 근로자에게 계산을 배포하려고합니다. 그러나 많은 시간을해야 할 순간까지 계산이 무엇인지 알 수 없습니다. – Jeff

답변

1

당신은 아마 원하는 : 당신은 그냥 어딘가에 return 문을 넣을 수 없습니다

eval("(" + object.function + ")"); 

.

function() {}은 이름이 없기 때문에 선언으로 평가됩니다. 구문 분석 할 데이터는 표현과 같으므로 var f = function() {}과 같이 ()을 넣어야 식으로 계산됩니다.

+0

감사합니다. 정확히 내가 무엇을 찾고 있었는지. – Jeff