diff options
Diffstat (limited to 'node_modules/lodash/_stringToPath.js')
-rw-r--r-- | node_modules/lodash/_stringToPath.js | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/node_modules/lodash/_stringToPath.js b/node_modules/lodash/_stringToPath.js index db7b0f7db..8f39f8a29 100644 --- a/node_modules/lodash/_stringToPath.js +++ b/node_modules/lodash/_stringToPath.js @@ -1,8 +1,7 @@ var memoizeCapped = require('./_memoizeCapped'); /** Used to match property names within property paths. */ -var reLeadingDot = /^\./, - rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; +var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g; /** Used to match backslashes in property paths. */ var reEscapeChar = /\\(\\)?/g; @@ -16,11 +15,11 @@ var reEscapeChar = /\\(\\)?/g; */ var stringToPath = memoizeCapped(function(string) { var result = []; - if (reLeadingDot.test(string)) { + if (string.charCodeAt(0) === 46 /* . */) { result.push(''); } - string.replace(rePropName, function(match, number, quote, string) { - result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match)); + string.replace(rePropName, function(match, number, quote, subString) { + result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match)); }); return result; }); |