我的编程空间,编程开发者的网络收藏夹
学习永远不晚

JS中如何将JSON数组转化为url参数

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

JS中如何将JSON数组转化为url参数

JS将JSON数组转化为url参数

有需求要用nodejs做一个爬虫工具,发送请求的时候,需要将json数据转换成url参数。在python中我们可以使用urllib.urlencode轻松来完成,在nodejs中就需要手动封装一个工具了。

本来不想努力了,在百度上随便找一个算了。但是感觉百度上的那些写得太长,一个小工具没必要牺牲那么多行代码来完成。于是就自己弄了一个。

前置知识点

  • Object.entries():返回一个数组,其元素是与直接在object上找到的可枚举属性键值对相对应的数组。属性的顺序与通过手动循环对象的属性值所给出的顺序相同。
  • forEach: 对数组的每个元素执行一次给定的函数,可以理解相当于 for 循环的简写版(实质不只那么简单)。
  • Array.push(): 方法将一个或多个元素添加到数组的末尾,并返回该数组的新长度。
  • Array.join(): 将一个数组(或一个类数组对象)的所有元素连接成一个字符串并返回这个字符串。如果数组只有一个项目,那么将返回该项目而不使用分隔符。

代码

const converToUrl = requestParams => {
  let params = [];
  Object.entries(requestParams).forEach(([key, value]) => {
      let param = key + '=' + value;
      params.push(param);
  });
  return '?' + params.join('&');
}

实例演示

const urlUtil = require('./reqParamsConverToUrl.util');

const requestParams = {
  'name' : "zhangsan",
  'age' : 18
}

const urlParams = urlUtil.converToUrl(requestParams);
console.log(urlParams);

运行结果:

JavaScript JSON与URL参数互转

JSON转URL参数

function parseParams(data) {
    try {
        var tempArr = [];
        for (var i in data) {
            var key = encodeURIComponent(i);
            var value = encodeURIComponent(data[i]);
            tempArr.push(key + '=' + value);
        }
        var urlParamsStr = tempArr.join('&');
        return urlParamsStr;
    } catch (err) {
        return '';
    }
}   

var obj = {
    name: 'zhangsan',
    age: 100
};

parseParams(obj); //"name=zhangsan&age=100"

URL参数转JSON

function getParams(url) {
  try {
    url = url.match(/\?([^#]+)/)[1];
    const obj = {};
    const arr = url.split('&');
    for (let i = 0; i < arr.length; i++) {
      let subArr = arr[i].split('=');
      let key = decodeURIComponent(subArr[0]);
      let value = decodeURIComponent(subArr[1]);
      obj[key] = value;
    }
    return obj;
  } catch (err) {
    return null;
  }
}

var urlStr = 'http://www.xxx.com/test?name=zhangshan&age=100#hello';

getParams(urlStr); //{name: "zhangshan", age: "100"}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

JS中如何将JSON数组转化为url参数

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

JS中如何将JSON数组转化为url参数

这篇文章主要介绍了JS中如何将JSON数组转化为url参数问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2023-05-16

php如何将url的参数转化成数组

本文小编为大家详细介绍“php如何将url的参数转化成数组”,内容详细,步骤清晰,细节处理妥当,希望这篇“php如何将url的参数转化成数组”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。转化方法:1、使用“mb_
2023-06-30

python如何将json转化为数组

可以使用`json`库中的`loads`函数将JSON字符串转化为Python对象,然后使用`list()`函数将Python对象转化为数组。下面是一个示例:```pythonimport jsonjson_str = '[1, 2, 3,
2023-09-05

thinkphp中如何将json数据转为数组

这篇文章主要介绍“thinkphp中如何将json数据转为数组”,在日常操作中,相信很多人在thinkphp中如何将json数据转为数组问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”thinkphp中如何将j
2023-07-05

php如何将json数据转化为数组类型

这篇文章主要讲解了“php如何将json数据转化为数组类型”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php如何将json数据转化为数组类型”吧!在php中,可以利用json_decode
2023-06-22

php怎么将url的参数转化成数组

转化方法:1、使用“mb_substr($url,stripos($url,"?")+1)”获取url的参数部分;2、使用“parse_str("参数部分",$arr)”将参数解析到变量中,并传入指定数组中,变量名转为键名,变量值转为键值。
2019-08-12

php怎么将url的参数转化成数组

PHP将URL参数转化成数组PHP中使用parse_str()函数可将URL参数转化为数组。定义URL参数字符串,调用parse_str(),并存储在数组变量中。使用数组索引或isset()获取特定参数。示例:从URL中提取参数并转化为数组,输出结果。函数直接修改传递的数组,若不想修改原始数组,可传递空数组。特殊字符需解码。其他方法包括使用正则表达式、PHP内置superglobals或第三方库解析参数。
php怎么将url的参数转化成数组
2024-04-25

PHP中如何将List数据转为JSON数组

本篇内容主要讲解“PHP中如何将List数据转为JSON数组”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“PHP中如何将List数据转为JSON数组”吧!首先,我们要在PHP中定义一个List。
2023-07-05

如何将Vue的请求参数转化为json格式

文章正文:在Vue开发中,我们经常需要通过Ajax请求获取服务器端数据,而传递参数时,我们会将参数构建为一个对象或者数组,这个对象或者数组就是我们发起请求时的请求参数。但是在Vue开发中,我们经常会遇到一个问题:我们无法直接将一个复杂的对象或者数组作为请求参数传递,因为发送Ajax请求时,请求参数必须是一个json格式的字符串。那么,我们该如何将Vue的请求参数转化为json格
2023-05-14

php将数组转化为json的方法

这篇文章主要介绍php将数组转化为json的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!php将数组转化为json的方法:首先创建一个PHP示例文件;然后定义一个数组;最后通过“json_encode”函数将指
2023-06-14

javascript如何将数组转为json格式

这篇文章给大家分享的是有关javascript如何将数组转为json格式的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在javascript中,可以使用转化函数“JSON.stringify()”来将数组转为js
2023-06-14

php如何将空数组转为json格式

今天小编给大家分享一下php如何将空数组转为json格式的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。在开发Web应用程序时
2023-07-05

php怎么将json数据转化为数组类型

将JSON数据转换为PHP数组JSON是Web应用程序中常用的数据格式。本文介绍了如何使用PHP的内置函数json_decode()将JSON字符串转换为PHP数组。json_decode()接受一个JSON字符串并返回一个数组或对象。assoc参数控制是否返回关联数组(键为字符串)或索引数组(键为整数)。depth参数指定递归解码的深度。还可以使用JSON_BIGINT_AS_STRING选项,将JSON数字作为字符串返回,以保持精度。如果json_decode()解析失败,它将返回null。可以使用j
php怎么将json数据转化为数组类型
2024-04-25

php如何将数据转化为json格式

本篇内容介绍了“php如何将数据转化为json格式”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在php中,可以使用json_encode(
2023-06-30

php怎么将json数据转化为数组类型

在php中,可以利用json_decode()函数来将json数据转为数组类型,只需要将该函数的第二个参数设置为“true”即可,语法“json_decode($json, true)”。
2020-10-13

编程热搜

目录