2017-03-09 6 views
-3

/다른 if 문 내부 변수 myObj로를 선언 단점이 거기에 다음 코드 예제차이가 있습니까?

블록 1

var myObj = {} 

if(true){ 
myObj = { 
    name: "John", 
    age: 54, 
    phone: "33333" 
} 
}else { 
    myObj = { 
    code: "E233", 
    qty: "34" 
} 
} 

블록 2

if(true){ 
var myObj = { 
    name: "John", 
    age: 54, 
    phone: "33333" 
} 
}else { 
    var myObj = { 
    code: "E233", 
    qty: "34" 
} 
} 

을 가지고?

답변

0

'var'가 기안되어 있기 때문에 기술적으로 그다지 차이가 ​​없지만 하나의 변수 이름을 리팩터링하고 변경하는 경우 팝업 될 수있는 위험이 있습니다.

하나의 선언 만 변경하는 경우 변경되지 않은 선언/할당이 유효하지만 사용되지 않으므로 스크립트에서 예상되는 동작을 볼 수 없습니다.

변수를 한 번 선언하고 할당 중 하나의 이름을 바꾸는 것을 잊어 버리면 이전 변수 이름이 범위에서 더 이상 선언되지 않으므로 오류가 발생하므로 실수를 쉽게 catch하고 수정할 수 있습니다.