LEDs...
current use is a functions of impedance... from low to high battery conditions, the voltage changes.. if you use a resistor to limit the current at one voltage, then the current will also change.... thus changing the light output... that's all fine....
but suppose someone sets the current used at "operating voltage" at a "high level" - to get the most light out... Then if you increase the voltage (like charging), then your overvoltage can put too much current into the LED - dramatically decreasing the LED operating life and degrading output...
The LED might last 5 years, but it's operating output could also be greatly reduced...
**********
It is "sort of" a cost tradeoff.... and Zener Diodes, linear regulators, and switching regulators are all used.. for a fixture with 7 or 15 LEDs, it's a good idea to have a switching regulator (most efficient regulator) - but they can have issues too....
*********
A Zener is simplest and cheapest way to prevent over voltage - and can work well in something like a simple light...
************
There are going to be a lot of opinions - based on experience - and the bottom line is that most of the solutions will work better than incandescent....
**********
some get annoyed at switching supplies because the can put out RF and mess with the radios.. some do - not all...
--jr