I like to keep a very strict code formating guide in my head at all times. For me, consistency is a key factor of success. But, while my mental model is rigid in practice, it is flexible in evolution; I am continually trying to find ways to better format my code. Over the last few months, I have started using - and have come to absolutely love - a new formatting approach for the Conditional Ternary Operator in languages likeColdFusion and javascript.

In my current approach, I spread the conditional expression, the truthy expression, and the falsey expression across three lines of code:

How I Format The Conditional Ternary Operator In ColdFusion And JavaScript

For me personally, this conditional ternary format leads to improved readability. The visual landscape makes it immediately apparent that I'm dealing with a ternary operator. In the past, my eye would have to scan across a complex expression before I even realized that there was a "?" operator in play. Now, however, the existence of the "?" and ":" tokens becomes immediately apparent, indicating that the first line is actually a "condition" and not an "assignment". This also creates clear differentiation between the truthy expression and the falsey expression.

Sticking to this format has also had the added benefit of curtailing overly-concise code. When I allowed myself to keep the entire conditional ternary operation on a single line, I was able to slip it inline into places like return() statements and function() invocations. Now, however, with the operator spread across three lines of code, it forces me to create intermediary variables which produces more expressive code and requires less cognitive load.

The conditional ternary operator is not a replacement for If/Else control flow. I reserve the use of the ternary operator for simple sets of expressions. Once the expressions start to get complicated, I'll revert to a more standard If/Else block, where I can more clearly pick-apart aspects of the logic.

I will, of course, continue to coarse-correct my approach to code formatting until I am completely happy with it; but, at least for the conditional ternary operator, this feels like the final format. This feels right. It feels easy to explain my choice and reasoning to others.

本文前端(javascript)相关术语:javascript是什么意思 javascript下载 javascript权威指南 javascript基础教程 javascript 正则表达式 javascript设计模式 javascript高级程序设计 精通javascript javascript教程

主题: JavaScriptJava
tags: code,my,expression,ternary,conditional,format
本文标题:How I Format The Conditional Ternary Operator In ColdFusion And JavaScript

技术大类 技术大类 | 前端(javascript) | 评论(0) | 阅读(202)