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 ... 
