stringReverse

by not important

HTML

<script src="http://searls.github.io/jasmine-all/jasmine-all-min.js"></script>
<span id="output-string"></span>

JavaScript

// http://jsperf.com/idlesync-reverse

var reverse = function(inputString) {
    stringArray = inputString.split('');

    lastIndex = stringArray.length - 1;
    for(var i = 0; i < stringArray.length / 2; i++) {
        var tmpChar = stringArray[i];
        stringArray[i] = stringArray[lastIndex];
        stringArray[lastIndex] = tmpChar;
        lastIndex--;
    }
    
    return stringArray.join('');
}

describe('reverse', function () {
    it('works with strings of even length', function () {
        var reversedString = reverse('abcdef');
        expect(reversedString).toEqual('fedcba');
    });

    it('works with strings of odd length', function () {
        var reversedString = reverse('ghijk');
        expect(reversedString).toEqual('kjihg');
    });
});