mirror of
https://github.com/10h30/odin-javascript-exercises.git
synced 2026-07-12 11:16:09 +09:00
Clean up the oopsie. Rebuild the blank exercises.
This commit is contained in:
+4
-5
@@ -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;
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user