Skip to content

Instantly share code, notes, and snippets.

@RauliL
Last active January 23, 2018 18:35
Show Gist options
  • Save RauliL/7c3ee224e39dcad611a2b93486f15d9c to your computer and use it in GitHub Desktop.
Save RauliL/7c3ee224e39dcad611a2b93486f15d9c to your computer and use it in GitHub Desktop.
diff --git a/src/parse-query.js b/src/parse-query.js
index 2033083..1d7e21e 100644
--- a/src/parse-query.js
+++ b/src/parse-query.js
@@ -10,7 +10,7 @@ export const parseQuery = (query) => {
let id = null;
let className = null;
let mode = TAG_NAME;
- let buffer = '';
+ let previousOffset = 0;
for (let i = 0; i <= query.length; i++) {
const char = query.charCodeAt(i);
@@ -23,15 +23,15 @@ export const parseQuery = (query) => {
if (i === 0) {
tag = 'div';
} else {
- tag = buffer;
+ tag = query.substring(previousOffset, i);
}
} else if (mode === ID) {
- id = buffer;
+ id = query.substring(previousOffset, i);
} else {
if (className) {
- className += ' ' + buffer;
+ className += ' ' + query.substring(previousOffset, i);
} else {
- className = buffer;
+ className = query.substring(previousOffset, i);
}
}
@@ -41,9 +41,7 @@ export const parseQuery = (query) => {
mode = CLASS_NAME;
}
- buffer = '';
- } else {
- buffer += query[i];
+ previousOffset = i + 1;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment