aboutsummaryrefslogtreecommitdiff
path: root/node_modules/lodash/_stringToPath.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/lodash/_stringToPath.js')
-rw-r--r--node_modules/lodash/_stringToPath.js9
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;
});