가능한 중복 작동하지 함수에서 전역 변수를 업데이트 :
Javascript global variable is not updating는 자바 스크립트
내가 만드는 중이라서이 사이트를 가지고있다. 다른 함수에서 전역 변수를 업데이트하려고합니다. 전역 변수 statCheck는 0으로 초기화됩니다. 전역 변수를 업데이트하고 경고로 새 값을 표시하는 2 개의 함수를 만들고 두 번째로 업데이트 된 전역 변수의 새 값을 경고하는 함수를 작성했습니다. 문제는 이제 내가 첫 번째 함수를 호출 할 때 새로운 업데이트 된 값을 알려주지 만 두 번째 함수를 호출하면 원래 값인 0으로 경고합니다. 내 코드는 다음과 같습니다.
var statCheck=0;
var users=new Array();
var password=new Array();
users[0]="clydewinux";
password[0]="moonfang";
users[1]="freddipasquale";
password[1]="evastar182";
function verifyInput(){
var u=login.username.value;
var p=login.password.value;
for (var c=0;c<=1;c++){
if(u===users[c]&&p===password[c])
{
statCheck=1;
alert(statCheck);
window.open("login.htm", '_self');
break;}
else
{document.getElementById("username").value="Invalid username...";
window.open("home.htm", '_self');
break;}
}
}
function logout(){
alert(statCheck);
window.open("home.htm", '_self');
}
* 참고 : function verifyInput()은 첫 번째 함수이고 logout은 두 번째 함수입니다.
window.statCheck = 0;
// ...
window.statCheck = 1;
// ...
alert(window.statCheck);
이것은 또한 코드의 가독성에 도움이 :
비밀번호 확인 : 당신이하고 있습니다. * 매우 잘못되었습니다. 우선, 자바 스크립트를 사용하고 있습니다. 즉, 쉽게 건너 뛸 수 있습니다. 그런 다음 소스 코드에 암호를 일반 텍스트로 포함시켜 모든 사람이 볼 수있게합니다. 이것은 글자 그대로 암호를 확인하기 위해 할 수있는 가장 최악의 일입니다. 그것은 전혀 확인하지 않는 것보다 더 나쁩니다. – NullUserException
이 질문을 이미 물어 본 이유는 무엇입니까? 다시 묻는 이유는 무엇입니까? : http://stackoverflow.com/questions/13016498/javascript-global-variable-is-not-updating –
죄송합니다. 아직 패스워드를 확인하지 않으려면 자바 스크립트를 사용하지 마십시오 .. – clydewinux