Uważam, że linia powinna zaczynać się od najwyższego symbolu w drzewie analizy instrukcji, którą chcesz złamać. Podkreśla operatora, który jest najważniejszy w wyrażeniu. Jest to ten sam powód, dla którego umieściłeś inny na początku linii, a nie na końcu poprzedniej linii.
W poniższym przykładzie, skanując lewy margines, widzisz strukturę instrukcji jako OR 3 wyrażeń.
if (ch>='A' && ch<='Z'
|| ch>='a' && ch<='z'
|| ch>='0' && ch<='9')
{...}
Poniżej || operatorzy są mniej wyróżnieni. Jest mniej oczywiste, że jest to || wyrażeń. Zwłaszcza jeśli linie miały różne długości.
if (ch>='A' && ch<='Z' ||
ch>='a' && ch<='z' ||
ch>='0' && ch<='9')
{...}
I tylko w celach informacyjnych, to bardzo źle. || operatorzy w ogóle nie są podświetleni.
if ( ch>='A' && ch<='Z' || ch>='a'
&& ch<='z' || ch>='0' && ch<='9')
{...}
Lubię nawet wstawiać przecinki na początku wiersza, chociaż rzadko to widzę. Powstrzymuję się od robienia tego na wspólnym kodzie.
var note:Object =
{ key: key
, type: 'P'
, text: someLongProcedureCallGettingTheUserInitials()
+ ": " + getTheTextThatWasTyped()
};