자바 스크립트 및 전역 변수에 문제가 있습니다. 솔루션을 검색 할 때 몇 분 전에 읽은 기사에 따르면 함수 외부에서 정의 된 변수는 전역이며 문서 전체에서 사용할 수 있습니다. 글쎄, 이것은 나를 위해 작동하지 않습니다. 기본적으로, 심지어 내가 왜 여기에 프로세스를 단순화하려고 :함수가 전역 변수를 읽지 않습니다.
var list_amount = 1;
function createElements() {
window.alert('0');
var cintfa_list_top = $("<div>").attr({"id":"intfa_list_top"});
$('#intfa_list').empty()
$('#intfa_list').append(cintfa_list_top);
var j=0;
window.alert('1');
for (j=0;j<list_amount;j++) {
window.alert('2');
......
....
..
I는 0과 1의는 Window.alert를 얻을 수 있지만 나는 함수 내부는 Window.alert (list_amount)를 설정 2를위한, undefined가 반환됩니다. 전역 변수가 함수 내에서 작동하면 안됩니까? 그리고 내가 잘못 이해했다면 변수를 함수 매개 변수에 추가하지 않고도 변수를 전역 변수로 만들 수있는 방법이 있습니까?
createElements()의 외부에는 무엇이 있습니까? 그 기능이 다른 기능 안에 있습니까? 그렇다면 list_amount는 전역이 아니며 해당 함수의 로컬 일 것입니다 –
list_amount를 선언하기 전에 createElements를 호출하고 있습니까? –
그게 전부 야. 루크가 가지고있어. 호이 스팅 문제 야. 선언을 맨 위로 올리고 undefined로 설정 한 다음 1로 설정 한 행 앞에 createElements를 호출하면 정의되지 않음 –