2017-12-17 15 views
0

jQuery를 사용하여 파일 입력에서 읽는 함수를 작성 중입니다. 나는 함수를 작동 시키지만, 콘솔에 구문 경고가 나타납니다.Javascript 구문 오류 예기치 않은 토큰 (파일 입력)

function (el) { 

    function() { 
     var file = el.files[0]; 
     if (file) { 
      read = new FileReader(); 
      read.readAsDataURL(file); 
     } 

     return read.result; 
    } 
} 

오류로 인해 라인 3 function() {의 코드에 발생 표시되고 오류가 읽습니다 : 여기 내 코드입니다

catch되지 않은 구문 에러 : 예기치 않은 토큰 (

어떤 아이디어 ?

+1

어쨌든 호출되지 않습니다 익명의'function' 설정의 목적은 무엇인가? –

답변

2

익명 함수는 표현식의 일부 여야합니다 (예 : 할당, 즉시 호출되거나 인수로 전달됨)

하지만 어떤 식 으로든 익명을 사용하지 않으며 구문 오류입니다. 파서 함수 식별자를 기대하지만 (를 발견 있도록 지정된 장소에서만 명명 된 기능에서

는 유효한 것하고 던져 그 같이

Uncaught SyntaxError: Unexpected token (

+0

내가 함수 이름을 지정할 때 어떤 이유로 코드가 더 이상 작동하지 않습니다. – easports611

+0

@ easports611 콘솔에서 'Uncaught SyntaxError : Unexpected token'(오류? –

+0

예, 구문 경고와 함께 작동하지만 이름을 지정할 때 작동하지 않을 때 코드가 작동합니다. (경고는 사라집니다.) – easports611

0

당신은 t처럼 기능의 이름을 지정해야합니다. niese comment : 익명의 함수는 표현식의 일부 여야합니다. 할당, 즉 즉시 호출되거나 인수로 전달됩니다. 그러나 당신은 어떤 식 으로든 익명을 사용하지 않으며 이것은 구문 오류입니다.

function read(el) { 
 

 
    function readFile() { 
 
     var file = el.files[0]; 
 
     if (file) { 
 
      read = new FileReader(); 
 
      read.readAsDataURL(file); 
 
     } 
 

 
     return read.result; 
 
    } 
 
}

+0

실제로 함수의 이름을 지정하려고 시도했는데 코드의 기능이 중단되었습니다 (보이는 오류가 없습니다). , 데이터는 서버로 전송되지 않습니다. – easports611