2012-05-23 4 views
0

는 여기에 JSP 내 코드입니다.
문제는 성능면에서 어느 것이 더 낫다고 생각합니까?
첫 번째 경우 c : forEach 내의 스크립트 태그가 반복해서 반복됩니다.
두 번째 경우에는 이미 JSP에있는 c : forEach를 하나 더 만들고 있습니다.
여기에서 완전히 손실됩니다. 제발 조언.여러 자바 스크립트 태그 흠

답변

2

태그를 별도의 <script> 태그에 넣지 않아도됩니다. 정말 더 나은 방법을 원한다면 일련의 "push()"호출 대신 JavaScript 배열 리터럴을 작성하는 것이 좋습니다. Java 배열을 JSON으로 렌더링하는 JSP 확장이 트릭을 수행합니다.

—이 정교 편집, 당신은 같은 것을 쓸 수 있도록 해주는 JSTL 기능으로 제공 만든 JSON 인코더 :

<script> 
    var myArray = ${yourTLD:toJSON(some.java.array _)}; 
</script> 

은 "toJSON"함수가 배열을 표준 JSON으로 렌더링 할을 그 내용에 따라 다르다. (물론 사용되는 JSON 코드에 따라 다소 제약을 받는다.) JavaScript가 브라우저에 전달되면 다음과 같이 표시됩니다.

<script> 
    var myArray = [ "something", "something", "something" ]; 
</script> 

다시 Java 배열의 내용에 따라 달라집니다. Java 용 다양한 JSON 인코딩 라이브러리가 있으며, 실제로는 쓰기가 어렵지 않습니다 (실제로는 오픈 소스 라이브러리를 적용하는 것보다 더 쉽게이 될 수 있습니다). JSTL EL 함수로 함수를 제공하는 것은 public static 함수를 어딘가에 만들고 .tld 파일에서 선언하는 문제입니다.

+0

흥미로운 점은 같은 것을 달성하는 방법에 대한 자세한 정보를 제공해주십시오. – LearningEveryday

+0

OK 답변을 약간 연장 할 수 있습니다 ... – Pointy

+0

알립니다. 고맙습니다. – LearningEveryday

관련 문제