I'd suggest defining variables to hold `target.length` and `this.length` here, as property access has a cost & paying it once would be faster.