The examples you give are idiosyncrasies that shouldn't be in your code base in the first place (IMHO). These are things that vary from language to language and trusting yourself and others who are going to be reading your code to keep track of them correctly is not a good idea.
a = 5 + '5'
Ignoring the lack of a sigil, in PHP, a = 10.
In Python, this fails to typecheck.
In Javascript, as you note, a = '55'.
(I used an interpreter for each of these languages to verify this)
For me, I could potentially see the usefulness for this in two things: the various meanings of the 'this' keyword in Javascript and the positioning system for CSS. I always have to look that stuff up. Never seems to stick.
Otherwise, the 'factoids' I have 'memorized' are all out of necessity and come from repeated usage. I don't consciously memorize anything.
Comments
The examples you give are idiosyncrasies that shouldn't be in your code base in the first place (IMHO). These are things that vary from language to language and trusting yourself and others who are going to be reading your code to keep track of them correctly is not a good idea.
Ignoring the lack of a sigil, in PHP, a = 10.In Python, this fails to typecheck.
In Javascript, as you note, a = '55'.
(I used an interpreter for each of these languages to verify this)
For me, I could potentially see the usefulness for this in two things: the various meanings of the 'this' keyword in Javascript and the positioning system for CSS. I always have to look that stuff up. Never seems to stick.
Otherwise, the 'factoids' I have 'memorized' are all out of necessity and come from repeated usage. I don't consciously memorize anything.
Yeah, the `new Array...` questions as well - they should all be trick questions with the answer "don't use the Array() form".