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

yizhihongxing

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 自定义属性 data-*使用介绍

    JavaScript 自定义属性 data-*使用介绍 在 HTML5 中,我们可以使用自定义属性 data-* 来为 HTML 元素添加自定义属性,这些自定义属性可以用来存储任意类型的数据,也可以用 Javascript 来对其进行读写操作。 基本用法 语法格式如下: <element data-attributeName="value&q…

    JavaScript 2023年6月10日
    00
  • jQuery实现带有洗牌效果的动画分页实例

    首先让我们来理解一下这个问题的背景和要求。 背景: 现代网站中要求使用分页功能来展示大量数据。然而,单调的翻页效果会显得呆板,缺乏吸引力。因此,我们可以考虑使用带有动画效果的分页实例来增强用户体验。 要求: 本题要求我们使用jQuery来实现一个带有洗牌效果的动画分页实例。需要考虑用户界面的美观度和代码优雅性。 接下来我们开始讲解具体的实现方法。我们需要分为…

    JavaScript 2023年6月11日
    00
  • JavaScript 数据类型详解

    JavaScript 数据类型详解 简介 JavaScript 是一种弱类型、动态类型的编程语言,数据类型非常多样化。本文将从基本数据类型、对象类型和特殊数据类型三个方面详细介绍 JavaScript 中的数据类型。 基本数据类型 数值型(Number) 数值型是 JavaScript 中最基本的数据类型。它可以表示整数和浮点数。JavaScript 使用 …

    JavaScript 2023年5月17日
    00
  • JavaScript 之JS的组成与基本语法

    下面是详细的“JavaScript 之JS的组成与基本语法”攻略: JS的组成与基本语法 JS的组成 在研究JS的基本语法之前,必须了解JavaScript的组成。JavaScript由以下3部分组成: ECMAScript:JavaScript的基础语法部分,包含了核心语言功能和对象。 DOM:Document Object Model,文档对象模型,操作…

    JavaScript 2023年5月17日
    00
  • 详解如何在JavaScript中使用装饰器

    下面我会详细介绍如何在JavaScript中使用装饰器,以及两条相关的示例说明。 什么是装饰器? 装饰器是一种特殊的函数,可以修改类、方法或属性的行为,并且可以在不改变它们原始代码的情况下实现这些修改。 装饰器源自于 Python 语言,最近已被加入 ECMAScript 标准中并成为 ES2017 的一部分,原生支持。 如何使用装饰器? 在 JavaScr…

    JavaScript 2023年6月11日
    00
  • Javascript Array valueOf 方法

    以下是关于JavaScript Array valueOf方法的完整攻略。 JavaScript Array valueOf方法 JavaScript Array valueOf方法用于返回数组本身。该方法返回的是数组对象本身,而不是数组中的元素。 下面是一个使用valueOf方法的示例: var arr = [1, 2, 3, 4, 5]; console…

    JavaScript 2023年5月11日
    00
  • vue router总结 $router和$route及router与 router与route区别

    下面来详细讲解一下 “vue router 总结 $router和$route及router与 router与route区别” 1. 什么是vue-router? Vue Router 是 Vue.js 官方的路由管理器。它与 Vue.js 核心深度集成,我们可以用 Vue.js 生成的组件结构快速构建 SPA,并且非常方便地管理应用程序的路由。Vue Ro…

    JavaScript 2023年6月11日
    00
  • JS中可能会常用到的一些数据处理方法

    下面是关于JS中可能会常用到的一些数据处理方法的详细攻略。 1. 字符串处理方法 1.1 字符串的拼接 在JS中,我们可以使用加号 (+) 来实现字符串的拼接。例如:var str1 = “Hello,”; var str2 = “world!”; var result = str1 + ” ” + str2; 此时 result 的值为 Hello, wo…

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