convert URL Query String to Object All In One
convert URL Query String to Object All In One
URL / query string / paramas
query string to object
let str = "name=xgqfrms&sex=男&age=18&";
const params = new URLSearchParams(str);
for (let p of params) {
  console.log(p);
}
["name", "xgqfrms"]
["sex", "男"]
["age", "18"]
filter
let str = "name=xgqfrms&sex=男&age=18&";
str = str.split(`&`).filter(item => item.length).join(`&`);
// "name=xgqfrms&sex=男&age=18"
str.split(`&`).filter(item => item.length).reduce((acc, item) => {
  const [key, value] = [...item.split(`=`)];
  acc[key] = value;
}, {})
reduce
let str = "name=xgqfrms&sex=男&age=18&";
str = str.split(`&`).reduce((acc, item) => acc += item.length ? item : "", "");
// "name=xgqfrmssex=男age=18"
demo
"use strict";
/**
 *
 * @author xgqfrms
 * @license MIT
 * @copyright xgqfrms
 * @created 2020-10-01
 * @modified
 *
 * @description string to object
 * @difficulty Easy Medium Hard
 * @complexity O(n)
 * @augments
 * @example
 * @link
 * @solutions
 *
 * @best_solutions
 *
 */
const log = console.log;
const str = "name=xgqfrms&sex=男&age=18&";
const obj = str.split(`&`).filter(item => item.length).reduce((acc, item) => {
  const [key, value] = [...item.split(`=`)];
  acc[key] = value;
  return acc;
}, {})
log(`obj =`, obj);
// obj = { name: 'xgqfrms', sex: '男', age: '18' }
refs
https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array
xgqfrms 2012-2020
www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!
convert URL Query String to Object All In One的更多相关文章
- URL query string中文字符问题
		
如果URL的query string中包含中文字符,在不做特殊处理的情况下通过 request.getParameter 方法是获取不到正确的信息的,这是由于下面的两个机制造成的 浏览器会自动对URL ...
 - 使用Retrofit时出现 java.lang.IllegalArgumentException: URL query string "t={type}&p={page}&size={count}" must not have replace block. For dynamic query parameters use @Query.异常原因
		
/** * Created by leo on 16/4/30. */ public interface GanchaiService { @GET("digest?t={type}& ...
 - C#整数三种强制类型转换int、Convert.ToInt32()、int.Parse()、string到object 的区别
		
1.int适合简单数据类型之间的转换,C#的默认整型是int32(不支持bool型); 2.int.Parse(string sParameter)是个构造函数,参数类型只支持string类型; 3. ...
 - nodejs笔记三--url处理、Query String;
		
URL--该模块包含用以 URL 解析的实用函数. 使用 require('url') 来调用该模块. 一.parse函数的基础用法 parse函数的作用是解析url,返回一个json格式的数组,请看 ...
 - POST 发送HTTP请求入参为:String url, Map<String, Object> propsMap
		
/** * 发送HTTP请求 * * @param url * @param propsMap * 发送的参数 */ public static String httpSend(String url, ...
 - How to get the query string by javascript?
		
http://techfunda.com/Tools/XmlToJson http://beautifytools.com/xml-to-json-converter.php https://www. ...
 - Reading query string values in JavaScript
		
时间 2016-01-23 13:01:14 CrocoDillon’s Blog 原文 http://crocodillon.com/blog/reading-query-string-valu ...
 - How to: Convert Between Various String Types
		
This topic demonstrates how to convert various Visual C++ string types into other strings. The str ...
 - <原>ASP.NET 学习笔记之HTML helper中参数何时会是路由参数,何时又会是query string?
		
HTML helper中参数何时会是路由参数,何时又会是query string? @Html.ActionLink("Edit", "Edit", new ...
 
随机推荐
- (转载)微软数据挖掘算法:Microsoft 时序算法之结果预测及其彩票预测(6)
			
前言 本篇我们将总结的算法为Microsoft时序算法的结果预测值,是上一篇文章微软数据挖掘算法:Microsoft 时序算法(5)的一个总结,上一篇我们已经基于微软案例数据库的销售历史信息表,利用M ...
 - 栈 堆  stack heap  堆内存 栈内存  内存分配中的堆和栈 掌握堆内存的权柄就是返回的指针 栈是面向线程的而堆是面向进程的。 new/delete and malloc/ free 指针与内存模型
			
小结: 1.栈内存 为什么快? Due to this nature, the process of storing and retrieving data from the stack is ver ...
 - 【LinuxShell】echo用法详解
			
使用echo打印信息到终端 1 [Shell]echo "yz test" 2 yz test 3 [Shell]echo yz test 4 yz test 5 [Shell]e ...
 - MySQL如何安全的给小表加字段
			
MySQL学习笔记-如何安全的给小表加字段 如果要给一个大表加字段,你一般都会非常谨慎小心,以免对线上业务造成影响,但实际上给一个小表加字段不慎操作也会导致线上业务出问题,这篇文章主要学习一下MySQ ...
 - hashlib,configparser,logging
			
# hash: 算法, 结果是什么? 是内存地址, # print(hash('123')) # dic = {'name':'alex'} # print(hash('name')) # print ...
 - 我的刷题单(8/37)(dalao珂来享受切题的快感
			
P2324 [SCOI2005]骑士精神 CF724B Batch Sort CF460C Present CF482A Diverse Permutation CF425A Sereja and S ...
 - 题解【CF1444A Division】
			
题面 t 组数据. 给定参数 p,q,求一个最大的 x,满足 \((x|p)∧(q∤x)\). \(1\le t \le 500\),\(1\le p \le10^{18}\),\(2\le q\le ...
 - koa2+koa-generator+mysql快速搭建nodejs服务器
			
koa2+koa-generator+mysql快速搭建nodejs服务器 用koa的脚手架koa-generator可以快速生成项目骨架,可以用于发开或者测试接口 https://github.co ...
 - (十一)整合 FastDFS 中间件,实现文件分布式管理
			
整合 FastDFS 中间件,实现文件分布式管理 1.FastDFS简介 1.1 核心角色 1.2 运转流程 2.SpringBoot整合FastDFS 2.1 核心步骤 2.2 核心依赖 2.3 配 ...
 - Ajax(form表单文件上传、请求头之contentType、Ajax传递json数据、Ajax文件上传)
			
form表单文件上传 上菜 file_put.html <form action="" method="post" enctype="multi ...