With CS5-, you must name a new layer, call it the same name as your source layer for the naming, and then duplicate every item from the source to the new layer.
Be aware that things such as graphic styles applied to layers, opacity masks on layers, and sub-layers won't get carried over like this.
Does that apply to CC 2014? That's the version I'm using.
Okay, I tried to actually practice my own theory and use this in a real script. Did not work out how I hoped! There was problem with activeLayer being applied, complicated by the visual layout of the Layers panel. Doing any more than one layer at a time was getting screwed up, and having the layer selection not present, or having it targeting a sub-layer made the wrong things copy. This was when I wanted to use this technique in a loop.