In another role, the shop I worked in required line by line code review of all scripts before something could be submitted for release to the client. Sometimes, it was valuable, but that was the exception rather than the norm. The majority of the time the original developer would finish something late in the morning that was due to the client by close of business and they would go around the office to find someone, ANYONE, to look at it. Often this person had no familiarity with the project or the deliverable, code was not commented, and the developer would just try to rush them to rubber stamp it with repeated "this needs to go out today" statements.
As you can probably guess from my tone, I was not a fan. Quality of review also varied wildly depending on who was doing it. My favorite example was someone had developed an interactive Excel dashboard. The main page filtered and updated subtotals and then there was basic drill through to detail capability. Nothing too fancy, but lots of data, lots of notes, and definitions. The developer had two identical spreadsheets in terms of functionality, but with different markets and products. I reviewed one and someone else reviewed the other. The other guy came back in about 45 minutes and said "looks good". I took 2-3 hours and gave a list of approximately 70 issues ranging from spelling errors to functionality issues.
I think review should be done, but someone should be a designated secondary from the outset where possible and appropriate time allowed for review and testing.