이 순서도가 맞습니까?
아니요. 레이아웃이 잘못되었다는 것 외에도 오도 된 부분적으로 잘못된 것입니다.
내가 누락 된 항목이 있습니까?
예. 첫 번째 단계는 "A와 B를 부울, 문자열 또는 숫자"으로 변환하려고 시도하는 것이 잘못되었습니다. 즉 equality comparison algorithm의 첫 번째 단계는 아닙니다. 또한 어떤 유형의 변수를 변환해야합니까?
그런 다음 다음 단계는 특정 유형의 동일한 값을 반복적으로 묻는 대신 형식을 구분해야합니다.
"마지막"단계 "(유형)이 마지막 5 가지 상황 중 하나에 강제 적용될 수 있습니까? -> 강제 유형"세부 사항이 부족합니다. 모든 세부 사항. 부적절한 동등 비교의 가장 중요한 부분은 다음과 같습니다.
- 강제로 적용 할 수있는 유형은 무엇입니까?
- 어떤 종류의은에 강요 할 것인가?
- 어떻게 값의 강제 작동합니까?
그리고 강요 이후 알고리즘은 처음에는 문자열에 관한 질문이 아니라 시작과 거의 같습니다.
이 신원 연산자 (===)이 있지만 첫 번째 단계에서, 숫자 또는 문자열을 논리 값으로 A와 B를 변환하는 시도하지 않고 거의 같은 방식으로 작동합니다 나의 이해는합니다.
먼저 실제 알고리즘 명백 아니므 호 사실,
===
다른 유형에 값을 강제 변환 마지막 단계 제외한 동일한
를 작동
- 대신 false
반환된다.
편집 : 두 번째 다이어그램은 정확하고 (정확함), 여전히 이상한 레이아웃 결정을 특징으로합니다. 차트와
잘 했어! –
"동일성 연산자"가 없으며 엄격한 등호 연산자가 있습니다. 귀하의 질문이 "*"이면 흐름도가'=='연산자 * "에 사용되는 추상 비교 알고리즘을 모델링합니까? 대답은"아니오 "입니다. 시작하는 가장 좋은 장소는 사양입니다 : [* 추상 평등 비교 알고리즘 *] (http://ecma-international.org/ecma-262/5.1/#sec-11.9.3). – RobG
당신은 [에 상당하는 [* MSDN *] (http://msdn.microsoft.com/en-us/library/ie/ky6fyhws%28v=vs.94%29.aspx) 기사를 비교할 수 * MDN * ] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Comparison_Operators). – RobG