테스트 사이트 - 개발 중인 베타 버전입니다

자바스크립트 질문이요!! 채택완료

주니준이 5년 전 조회 4,028

html에서 외부 js 파일을 사용할려면 js 전체를 function으로 함수 지어서 해야되드라구요. 그래서 그런데 만약...

[js파일]

function caculation(){

연산...

 

function caculation(){

for(var a=0; a<10; a++)

출력내용1

}

 

function caculation(){

for(var a=0; a<10; a++)

출력내용2

}

 

function caculation(){

for(var a=0; a<10; a++)

출력내용3

}

}

연산은 출력123 출력되는데 다 공통적으로 사용되는것고요. 그러면 여기서 출력내용1을 출력하고 싶으면 어떻게 해야할까요?

 

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트

펑션안에 펑션을 선언하셨다는건가요?

calculation().a1() 이렇게 호출해보세요

 

펑션 선언이 잘못된거같은데

로그인 후 평가할 수 있습니다

답변에 대한 댓글 4개

주니준이
5년 전
이렇게 해도 안되네요...
선언은 되었지만 해당 값이 읽히지는 않았습니다.ts(6133) 큰 함수안에 작은 함수들이 값이 안 읽히네요...
병원에서일해요
5년 전
var calculation = {
a1:function() {
},
a2:function() {
}
}

이렇게 선언하고

calculation.a1();
이렇게 호출하시면 됩니다
주니준이
5년 전
안됩니다. 연산 부분에서 아예 오류가 나버립니다.
a1.function() 부분에는 식별자가 없다고 뜹니다 ㅠㅠ
병원에서일해요
5년 전
$(window).on("load", function(e) {
  calculation.a1()  
})

var calculation = {
    a1:function() {
      alert();
    },
    a2:function() {
    }
}

잘되네요

댓글을 작성하려면 로그인이 필요합니다.

플라이
5년 전

function 부분은 동일하게 사용은 불가하고요 해당 function 이름을 지어서 호출해서 적용해 주시면 되는 부분입니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 8개

주니준이
5년 전
아 저거 수정을 안했네요... 아 그러면
function caculation(){

연산...


function a1(){

for(var a=0; a<10; a++)

출력내용1

}



function a2(){

for(var a=0; a<10; a++)

출력내용2

}



function a3(){

for(var a=0; a<10; a++)

출력내용3

}

}
button onclick = "a1()"
호출하면 선언하면 되는건가요?

안되네요
플라이
5년 전
for문 전에 한번 alert로 실행이 되는지 체크해 보시고 for문에 발생되는 부분을 한번 체크해 보셔서 무엇이 문제인지를 브라우저 오류로 체크해 보시면 좋을듯 합니다.

참고로 for문 부분에 { 열리는 부분이 확인이 안되네요
주니준이
5년 전
아 예시에서는 표시를 안했는데요 ㅎㅎ 본문에서는 했는데 caculation 함수 안에 선언된 함수들이 선인은 되었지만, 값이 읽히지 않는다고 뜨네요...
주니준이
5년 전
함수 전체를 감싼 caculation을 없애면 안에 있는 함수들 인식을 하는데... 안에 갖혀놓으면 인식이 안되네요...
플라이
5년 전
그렇다면 for문의 함수의 사용과정에서 스크립트 오류가 발생되고 있는 부분이 있는듯 하니 참고해서 오류 처리를 해주셔야 할듯 싶습니다.
주니준이
5년 전
for문은 그냥 외부파일로 안놓고 출력시키면 잘 출력됩니다...
플라이
5년 전
그렇다면 스크립트 오류는 확인이 안되시나요?
주니준이
5년 전
Uncaught TypeError: Cannot read property 'count_all' of undefined
at HTMLButtonElement.onclick 함수로 넘어가질 않아요ㅡㅡ

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인