stavo trafficando con cose diverse, come questoPerché "a + + b" funziona, ma "a ++ b" no?
var a = 1, b = 2;
alert(a + - + - + - + - + - + - + - + b); //alerts -1
e ho potuto rimuovere gli spazi, e sarebbe ancora funzionare.
a+-+-+-+-+-+-+-+b
Poi ho provato
a + + b
Correva e valutata a 3, ma quando ho rimosso gli spazi, (a++b
) sarebbe non correre, e aveva un avvertimento che diceva "plus Confondere ".
posso capire che in casi come
a+++++b
che potrebbe essere interpretata come una delle caratteristiche seguenti
(a++) + (++b)
(a++) + +(+b)
a + +(+(++b))
a + +(+(+(+b)))
che sarebbe confusione.
Ma nel caso di
a++b
l'unico modo valido per interpretare questo, per quanto posso dire, è
a + +b
Perché non a++b
lavoro?
Immagino che sia in conflitto con un ++ che è valido synax, o ++ b. – TheCodeKing
Potrebbe anche essere interpretato (a ++) b o a (++ b) ... –
'++ b' è valido anche – Andrew