JS FormData对象使用方法实例详解

JS FormData对象使用方法实例详解

什么是FormData对象

  • FormData对象是JavaScript提供的一种数据处理对象,主要用来实现表单数据的序列化操作、数据的自动编码以及数据传输等功能。

FormData对象常用方法

  • FormData对象常用的方法有以下几种:

  • append(name, value[, filename]): 在一个form data中增加一个包含name/value键值对的数据。

  • delete(name): 删掉一个键值对;如果有多个相同的name,全部删掉。

  • get(name): 获取一个name所对应的一组键值对;如果没有这样的键值对则返回null。

  • getAll(name): 获取一个name所对应的全部键值对。

  • has(name): 如果有至少一个name所对应的键值对或者 filename 所对应的值存在则返回true, 否则返回false

  • set(name, value[, filename]): 设置一个某个name所对应的value值或者增加一个包含name/value的键值对的数据。

FormData对象简单示例

接下来通过两个示例来讲解FormData对象的使用方法。

1. 表单上传图片

<!--HTML结构-->
<form>
  <input type="file" id="file">
  <button onclick="submitForm()">提交表单</button>
</form>
//JS 代码
function submitForm() {
  let formData = new FormData();
  formData.append('file', document.querySelector('#file').files[0]);

  fetch('/upload', {
    method: 'POST',
    body: formData
  }).then(response => response.json())
   .then(result => {
     console.log(result);
   });
}

2. 添加表单数据与json对象数据

// JS代码
const form = new FormData();
form.append('name', 'yyang');
form.append('age', 20);

fetch('/submit', {
  method: 'POST',
  body: form,
}).then(response => response.json())
  .then(result => {
     console.log(result);
  });


const userData = {
  name: 'yyang',
  age: 20
};

fetch('/submit', {
  method: 'POST',
  body: JSON.stringify(userData),
  headers: {
    'Content-Type': 'application/json'
  }
}).then(response => response.json())
  .then(result => {
    console.log(result);
  });

上面这个例子展示了如何把表单数据和JSON数据都加入到FormData里面,实现了数据的同时传输。

总结

通过本文的讲解,我们可以了解到FormData对象是一种非常有用的JavaScript数据处理对象,可以方便地实现数据的序列化操作、数据的自动编码以及数据传输等功能。同时,通过上面的示例,我们也可以看到FormData对象在表单上传和同时传输表单数据和JSON对象数据方面的优秀表现。

大家在进行FormData对象的使用时,需要熟记相关的方法,并且注意数据格式的转换。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS FormData对象使用方法实例详解 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • 详解JavaScript实现哈希表

    详解JavaScript实现哈希表 什么是哈希表 哈希表是一种常见的数据结构,它可以提供快速的插入、查找和删除操作,其时间复杂度为 O(1) 。 哈希表的主要思想是将数据元素经过哈希(hash)函数的映射后,存储到一个数组中。哈希函数 将插入的元素映射到一个数组下标上,这个下标对应的元素就是这个元素所对应的值。在查找时,再使用同样的哈希函数,得到元素所对应的…

    JavaScript 2023年5月18日
    00
  • 寒冬求职之你必须要懂的Web安全

    寒冬求职之你必须要懂的Web安全 在进行Web开发工作时,我们必须要重视Web安全问题,因为没有安全保障的系统极易受到黑客攻击,泄露用户信息和系统的机密数据。在寒冬求职过程中,Web安全知识的掌握也是很重要的,今天我将为大家分享一下Web安全的攻略。 了解常见的攻击方式 SQL注入攻击 SQL注入攻击是指攻击者在Web应用程序使用的SQL语句中注入恶意的SQ…

    JavaScript 2023年6月11日
    00
  • 最简单的JavaScript图片轮播代码(两种方法)

    下面是“最简单的JavaScript图片轮播代码(两种方法)”的完整攻略。 什么是JavaScript图片轮播? JavaScript图片轮播是网站开发中常见的一种功能,可以展示一组图片,通过自动或手动切换图片来实现轮播效果,增强网站的视觉效果和用户体验。 JavaScript图片轮播的实现方法 在本文中,我们将介绍两种方法来实现最简单的JavaScript…

    JavaScript 2023年6月11日
    00
  • Xterm.js入门官方文档示例详解

    下面是对Xterm.js入门官方文档示例进行详细讲解的攻略。 Xterm.js简介 Xterm.js是基于Web技术栈实现的终端模拟器。它可以在网页中实现真正的终端体验,包括字符输入、光标移动、控制台输出等等。Xterm.js不仅支持基本的字符操作,还支持ANSI控制代码,允许在终端中显示颜色、样式和图像等内容。 Xterm.js官方文档示例 Xterm.j…

    JavaScript 2023年6月11日
    00
  • 正则表达式中特殊符号及正则表达式的几种方法总结(replace,test,search)

    正则表达式是一种用来描述、匹配一定模式文本的一种语法。在正则表达式中,有许多特殊符号用来表示常见的字符集、重复次数等,下面我们就来详细讲解一下正则表达式中的特殊符号以及几种常用的正则表达式方法。 正则表达式中的特殊符号 “^”:表示匹配字符串的开头。 “$”:表示匹配字符串的结尾。 “.”:表示匹配任意单个字符。 “*”:表示匹配前一个字符出现0次或多次。 …

    JavaScript 2023年6月10日
    00
  • JavaScript 字符串数字左补位,右补位,取固定长度,截位扩展函数代码

    下面我来详细讲解JavaScript字符串数字左补位、右补位、取固定长度、截位扩展函数的完整攻略。 JavaScript字符串数字左补位 左补位的需求在某些场景下非常常见,比如对日期格式化时,需要将月份和日期左补位补成两位数,例如1月份,格式化后应该是”01″。下面是一个左补位的示例代码: function leftPad(val, width, ch) {…

    JavaScript 2023年5月28日
    00
  • js实现的页面矩阵图形变换特效

    下面我将为您详细讲解js实现的页面矩阵图形变换特效的完整攻略。 环境准备 首先,我们需要准备好开发环境。针对此项目,我们需要安装好以下两个基本的环境: HTML5页面 JavaScript解释器 其中,HTML5页面会用来展示效果,而JavaScript解释器则会在页面加载时被调用,负责实现效果的逻辑。 实现过程 在环境准备完成后,我们就可以开始着手实现这个…

    JavaScript 2023年6月11日
    00
  • 原生js实现淘宝购物车功能

    原生js实现淘宝购物车功能的攻略可以分为以下几个步骤: 步骤一:页面结构 首先,我们需要在页面中设置一个存放购物车商品的容器,并给它一个id,方便我们后续在JavaScript中获取到它的元素: <div id="cart-container"> </div> 步骤二:获取数据 接下来,我们需要从后台获取购物车中的…

    JavaScript 2023年6月11日
    00
合作推广
合作推广
分享本页
返回顶部