2009-08-06 3 views
1
 
If I use an Assignment within conditional, for e.g. 
if(userType='admin') 
Flex throws a warning,unlike Java, which throws an error. 
Why should Flex be doing this, despite being one of the newest languages? 

1100: Assignment within conditional. Did you mean == instead of =? 

답변

1

(그리고 BTW는, 그것이 액션 스크립트 3의 "플렉스"아니다), 그들은 그것을 만드는 자바에 값을 가지고 있지 않습니다 아니. 차이점은 최근의 자바 화에도 불구하고 Actionscript가 ECMAScript의 자손이기 때문입니다. -이 액션 스크립트의 이전 버전과의 호환성을 아프게하지 않으며, 그것을 제거하지 않습니다

var foo:Number = 0; 
var bar:Number = 0; 
foo = bar = 2; 
assertEquals(2, foo); 
assertEquals(2, bar); 

IMO이 그것을 가질 수있는 최선의 행동은 :이 디자인의 다른 결과는 다음과 같이 진술을 할 수있는 능력이다 handholding을 목적으로 한 언어 기능을 제공하지만 사용자의주의에 공통적 인 오류를 가져옵니다.

0

제 생각에는 컴파일러가 자동으로 수정한다는 것입니다.

플렉스가 그렇게하는 것은 흥미 롭습니다.

할당 구문 법적 것을 만드는 ActionScript의 값을 가지고 있기 때문에