Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const parseUrl = (urlInput) => {
- let urlObject = {
- protocol: '',
- host: '',
- path: '',
- query: {},
- }
- let urlProtocol = urlInput.indexOf('://');
- urlObject.protocol = urlInput.substring(0 ,urlProtocol); // https
- urlInput = urlInput.substring(urlProtocol+3);
- let urlHost = urlInput.indexOf('/');
- urlObject.host = urlInput.substring(0, urlHost);
- urlInput = urlInput.substring(urlHost);
- let urlPath = urlInput.indexOf('?');
- urlObject.path = urlInput.substring(0 ,urlPath);
- urlInput = urlInput.substring(urlPath+1);
- if(urlInput.includes('&')) {
- let splitUrlInput = urlInput.split('&'); // q=cats region=eu
- // console.log((splitUrlInput));
- for (const any of splitUrlInput) { // [ 'q', 'cats' ] [ 'region', 'eu' ]
- let toUseArr = any.split('=');
- let keyToAssign = toUseArr[0].toString();
- urlObject.query[keyToAssign] = toUseArr[1];
- }
- } else {
- let splitUrlInput = urlInput.split('&');
- for (const any of splitUrlInput) { // [ 'q', 'cats' ] [ 'region', 'eu' ]
- let toUseArr = any.split('=');
- let keyToAssign = toUseArr[0].toString();
- urlObject.query[keyToAssign] = toUseArr[1];
- }
- }
- return urlObject;
- };
Advertisement
Add Comment
Please, Sign In to add comment