2010-02-10 10 views

답변

6

CF8 이후 ColdFusion에서 이중 파이프 (이중 앰퍼샌드는 물론)가 지원됩니다. 그것을 배우기 때문에, 나는 항상 OR/AND 대신 이중 파이프/이중 앰퍼샌드를 사용합니다. 이 스타일을 사용하여 코드를 작성하는 이유는 수행되는 작업과 관련하여 "OR"이 완전히 서술 적이 지 않기 때문입니다. 단락과 함께 비트 OR, 논리 OR 및 논리 OR이 있습니다.

비트 단위 OR : 01 | 10 = 11

논리 OR : buildErrorsOn(form.varA) | buildErrorsOn(form.varB)

논리 OR (단락) : isDefined('url.doStuff') || isDefined('url.doStuff')

당신이 지금 당장 사용할 수있는 언어에 대해 (오라클은 주목할만한 것으로 보이는에서 예외), 이중 파이프는 항상 단락 회로가있는 논리 OR을 의미합니다. 정확한 표기법입니다.

+0

내가 선호하지만 || 그리고 &&, 나는 그것이 훨씬 더 가능성이 높다는 것을 인정해야한다. | 오랜 버전 OR과 BitOr을 오판하는 것보다 더 낫습니다. 적어도 처음에는 .. – Leigh

0

잘 모르겠지만 cfif 문은 OR 만 지원하므로 질문에 대한 대답은 '항상'입니다. 이 참조 : 그를 나타내는 참조를 찾을 수 없습니다 불구하고

2

는 해당 키워드에 패리티를 제공 CF9의 지원이있을 수 있습니다. 실제로 CFIF에서 OR 키워드를 사용하고 || SQL 쿼리에서 문자열 연결.

2

CF8 이후 지원되었습니다. CF8 documentation

나는 항상 "또는"더 직관적이라고 느낍니다. (나는 SQL의 문자열 연결에 항상 "+"를 사용합니다 - 또는 SQL Server에만 해당되는 것입니까?)

+0

예, sql의 경우 "+"는 SQL Server에만 해당됩니다. 메모리가 작동하면 오라클은 "||" ..., – Leigh

+0

적어도 간단한 논리 연산자에 대해 합의가 이루어 지길 바랄 것입니다. -/ –

+0

하하 .. 우리는 할 수 있습니다. 그러나 그것은 모두에 관한 것입니다. – Leigh

3

나는 || CFML의 CFSCRIPT 및 OR