1.JSON.stringify()
在 JavaScript 中,JSON.stringify()
方法可以将一个 JavaScript 对象或值转换为对应的 JSON 字符串表示,(在这个例子中,使用了this.form
来表示)转换为一个 JSON 字符串,所以,JSON.stringify(this.form)
将返回包含表单数据的 JSON 字符串。
<script>
import changePersonSignVue from './change-person-sign.vue';
export default {
data() {
return {
form: {
inputName: '',
userId:'111'
}
}
},
onLoad(e) {
console.log('e.name', e.namea)
if (e.namea) {
this.form.inputName = e.namea
}
var formData = JSON.parse(JSON.stringify(this.form));
console.log('JSON.stringify',JSON.stringify(this.form));
console.log('slice',JSON.stringify(this.form).slice(2,6));
console.log('slice',`JSON.stringify(this.form).slice(2,7)+'-'+JSON.stringify(this.form).slice(14,16)`);
console.log('slice',`${JSON.stringify(this.form).slice(2,7)}-${JSON.stringify(this.form).slice(14,16)}`);
console.log(typeof(JSON.stringify(this.form)));
console.log(' JSON.parse(JSON.stringify(this.form)',formData);
console.log(typeof(formData));
console.log('Object.keys',Object.keys(formData));
console.log('split',JSON.stringify(Object.keys(formData)).split(','));
},
2.JSON.parse()
JSON.parse()
方法用来解析 JSON 字符串,就是把JSON字符串转成对象。
3.Object.keys()
在JavaScript中,使用Object.keys()
方法可以将对象的键作为一个数组返回。
这段代码是用于获取一个对象(formData)的所有键(keys),formDataKeys
将包含formData
对象的所有键。
4.转JSON 字符串情况
-
数据传输:当您需要将数据从客户端发送到服务器,或者从服务器发送到客户端时,常常需要将数据转换为JSON字符串。因为JSON是一种通用的数据交换格式,可以轻松地在不同平台和语言之间进行解析和生成。
-
数据存储:如果您想要将JavaScript对象或值持久化保存到本地存储(例如文件系统、数据库等),则通常需要将其转换为JSON字符串。这样可以确保数据的完整性,并使其易于读取和写入。
-
API交互:当使用Web服务的API时,通常会要求将请求和响应数据以JSON格式进行编码和解码。这样可以方便地在客户端和服务器之间传递数据,并确保数据的一致性和可读性。
-
序列化和反序列化:通过将JavaScript对象或值转换为JSON字符串,可以实现对象的序列化。这意味着您可以将对象保存为字符串,稍后再将其还原为相同的对象。这对于缓存、状态管理和数据传递非常有用。
5.JSON.stringify()和toString的区别
JSON.stringify()
和toString()
是JavaScript中两个不同的方法,其作用也不同。
-
JSON.stringify()
:这是一个用于将JavaScript对象转换为JSON字符串的方法。它接受一个JavaScript对象作为参数,并返回一个表示该对象的JSON字符串。这个方法通常用于将数据从前端发送到后端,或者在数据传输过程中进行序列化和反序列化操作。 -
const obj = { name: 'John', age: 25 }; const jsonStr = JSON.stringify(obj); console.log(jsonStr); // {"name":"John","age":25}
-
toString()
:这是一个用于将JavaScript对象转换为字符串的方法。它可以应用于各种JavaScript对象类型,例如数字、布尔值、数组、日期等。当调用toString()
方法时,JavaScript会尝试将对象转换为相应的字符串表示形式。 -
const num = 10; const str = num.toString(); console.log(str); // "10"
总结:
JSON.stringify()
用于将JavaScript对象转换为JSON字符串。toString()
用于将JavaScript对象转换为字符串,可以用于不同类型的对象。