js怎么讲json转化为string
"{"name":"Wede.Zhao","birth":"1984-11-29T00:00:00.000Z","legs":[1,2,3,4],"year":2016}"转换方式有两种:
jsjson字符串转对象 js字符串转json对象数组
jsjson字符串转对象 js字符串转json对象数组
jsjson字符串转对象 js字符串转json对象数组
1、利用原生JSON对象,将对象转为字符串:Object {name: "Wede.Zhao", birth: "1984-11-29T00:00:00.000Z", legs: Array[4], year: 2016}
jsObj.testArray = [1,2,3,4,5]; //初始化
jsObj.date = '8 May, 2011';
alert(str); //弹出提示
2、重写toString()方法:
Dog.prototype.toString = function dogToString(jsObj.name = 'CSS3';) {
var ret = 'Dog ' + this.name + ' is a ' + this. + ' ' + this.color + ' ' + this.breed;
return ret;
js 怎么将一个对象转成字符串
对象形式的,如:var json={'name':'zhang','age':18};或var json=['zhang','18'];利用原生JSON对象,将对象转为字符串
老铁你好。你有没有发现json里的中文都转码啦?这是因为json在传到js中的时候解析了,要想不解析,可以将该json字符串使用 var value = [(${data.jsonStr)] 包裹一下。望采纳[jascript] view plain c}opy
var jsObj = {};
jsObj.testArray = [1,2,3,4,5];
jsObj.date = '8 May, 2011';
var str = JSON.stringify(jsObj);
alert(str);
在js中怎么解析JsonObject对象数组
varjs和ja中的json对象无法互相转换的吧(用struts2可以),可以在ja中将对象转换为json字符串,传到js后,再在js中将json字符串转换成json对象
Ja code
Map map1 = new HashMap();
map1.put("id", 1);
map2.put("id", 2);
map2.put("name","李四");
List list = new ArrayList();
list.add(map1)
list.append("\\r");.add(map2)
Map jsonMap = new HashMap();
jsonMap.put("jsonstr",list); //必须是map对象才能转换成json对象
JSONObject json = JSONObject.fromObject(map); //要用到json-lib-2.3-jdk15.jar
return 单独处理它们,直接返回 undefined 。 json.toString();
JScript code
UserAction.getUser(function(result) { var jsonResult = JSON.parse(result);//如何不行用var jsonResult=JSON.parseJSON(),json版本问题 var resultList = jsonResult['jsonstr']; for(var one in resultList){ var = resultList[one]; alert(.id); alert(.name); }
浅谈JS中的JSON.stringify() 和 JSON.parse()
我们知道, JSON.stringify() 和 JSON.parse() 是一对处理JSON数据的方法,前者是将JSON对象序列化为字符串,而后者是将JSON字符串解析为JSON对象。
记得引入json.js但是你有较为深入地去了解过它们吗?它们分别可以传入几个参数以及每个参数对应的作用是什么你知道吗?
var arr = [1,2,3];需要字符串化的对象,且该对象须是安全的JSON对象,而对于不安全的JSON对象都不能被正常序列化。
何为不安全的JSON对象?
undefined、function、symbol 和包含循环的引用的对象都不符合JSON结构标准,所以它们本身以及包含它们的对象都是不安全的JSON对象。
那么对于不安全的JSON对象, JSON.stringify() 会如何处理它们呢?
包含它们的对象,自动将其忽略。例如:
包含它们的数组,自动将其转成 null 。例如:
如果两个对象之间互相引用,形成一个无限循环,那么无论对其中的哪个对象进行JSON字符串化都会直接报错!例如:
对该类对象进行JSON字符串化,会先调用 toJSON() 方法,然后用它的返回值来进行序列化。例如:
正常按照前面讲的忽略 function 来说应该要返回 "{"a":1}" 才对嘛,为啥是 undefined 呢? 这就是因为包含 toJSON() 方法的缘故,只要有它,直接就处理它的返回值。上例中因为 toJSON() 方法返回值是个不安全的JSON对象,所以就按照前面 ① 中讲的方式来处理了。
再看个例子你就明白了:
用于指定对象序列化过程中需要被处理的属性,它可以是数组或函数。
必须是字符串数组,其中包含序列化要处理的对象的属性名称,除此之外的其他属性会被忽略。例如:
该函数会先调用对象本身,然后遍历对象的每个属性。函数传入两个参数,个为属性名(key),第二个为属性值(value)。开始调用对象本身时,个参数key为空字符串,第二个参数value为对象本身,而此时函数的返回值会直接替换原对象。而后每次遍历对象属性时的返回值都会替换原有该属性的值。例如:
可以看到,无论传入的字符串有多长,最终只会取前十个字符用于缩进填充。
了解完了 JSON.stringify() ,我们再来看看它的逆作函数 JSON.parse() 。
它可以传入两个参数, 参数1 是需要被解析的字符串, 参数2 是用于修改解析生成的原始值。后一个参数是可选的,而我们最常用的就是只传一个参数。
该参数必须是符合JSON规范的字符串,如果是其他类型,则会被强制类型转换成字符串格式,如果不符合JSON规范,则会报错!例如:
注意JSON字符串中的key必须有双引号(单引号也不行),不然是不符合JSON规范的。
该参数是个函数,作用类似于前面 JSON.stringify() 的第二个参数replacer,同样是对属性进行遍历,同样有key和value两个参数。我们具体来看个例子:
看到了吗?前面属性的遍历可以修改输出对象的属性值,但最终输出的值关键还是取决于key为空字符串时的返回值,它可以将之前所有的努力都变为徒劳!
在 ja web开发中怎么使用json?
case '\f': //走纸换页一、JSON建构有两种结构:
json简单说就// 基本数据封装类是jascript中的对象和数组,所以这两种结构就是对象和数组2种结构,通过这两种结构可以表示各种复杂的结构
1、对象:对象在js中表示为“{}”括起来的内容,数据结构为 {key:value,key:value,...}的键值对的结构,在面向对象的语言中,key为对象的属性,value为对应的属性值,所以很容易理解,取值方法为 对象.key 获取属性值,这个属性值的类型可以是 数字、字符串、数组、对象几种。在Ja中就是一种Map结构。
2、数组:数组在js中是中括号“[]”扩起来的内容,数据结构为 ["ja","jascript","vb",...],取值方式和所有语言中一样,使用索引获取,字段值的类型可以是 数字、字符串、数组、对象几种。在Ja中是一种list结构。
经过对象、数组2种结构就可以组合成复杂的数据结构了。
使用Json语法创建对象
var people = {"name":"jack","":"mail"};
可以通过这种语法创建json对象,用“{}”括起来,用“,”隔开key:value
使用Json语法创建数组
var arr =[value1,value2...];
一个包含多个people的数组 peoples = [{"name":"jack","":"mail"},
"name":"lily","":"femail"};
Json数组可以通过这种语法创建,用"[]"括起来,数组元素之间用“,”分隔开,下面是这种语法的示意图:
在使用Json格式字符串与交互时候,可以利用Json扩展的方法将字符串转换成一个JaScript对象,或者将一个对象转换成Json格式字符串。不过先要登录://
访问数据
只需用点号表示法来表示数组元素。所以,要想访问 上面peoples列表的个条目的名字,只需在 JaScript 中使用下面这样的代码:
peoples[0].name
利用这样的语法,可以处理任何 JSON 格式的数据,而不需要使用任何额外的 JaScript enumerable的属性序列化为json格式的字符串。工具包或 API。
修改数据
peoples[0].name = "Rachmaninov";
在将字符串转换为 JaScript 对象之后,就可以像这样修改变量中的数据。
JSON格式的String 怎么转成 net.sf.json.JSONObject
var str = JSON.stringify(Ajson);JSONArray jsonArray = JSONArray.fromObject(data);
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject jsonObject = (JSONObject) jsonArray.g用于指定输出字符串的缩进格式。它可以是正整数,也可以是字符串。当是正整数时,它指定的是每一级缩进的字符数,当它是字符串时,该字符串的前十个字符将会被用于每一级的缩进。例如:et(i);
.toBean(jsonObject,参考代码如下: BEAN .class);
js中eval和$parseJSON的区别和联系以及JSON.stringify
你是想把前台的string转化成ja中的对象吗?直接下个json转换器的jar包就可以了,比如说gson,jackson都挺不错的。eval和parseJSON都是讲字符串json转换为对象,eval是js中的i += 2;用法,parseJSON是jquery中的用法,需要引入jquery插件。
json.stringify是将jsothis.maritalStatus = maritalStatus;n对象转换为字符串
使用josn 在js中 key去掉双引号
看到了吗?每一次遍历返回值都可能会对最终的处理结果产生影响。我们再看个例子:首先,需要说明的是,标准的json对象格式为{"key":value,"key2":value2},键必须带有双引号,也就是说你上面的格式没有问题,既然你有这样的需求,下面代码可以实现:
// 待处理的json对象
var jsonObj = {"title":"\u660c\u5409","content":"","point":"87.997349|43.732302","isOpen":"0","icon":"w:21,h:21,l:0,t:0,x:6,lb:5"};
var keyValue = "";
// 处理好的json字符串
var jvar res = JSON.parse(str);sonStr = "";
foalert(json)r (var key in jsonObj) {
keyValue += key + ':"' + jsonObj[key] + '",';
}// 去除一个逗号
keyValue = keyValue.substring(0,keyValue.length - 1);
console.log(jsonStr);
你上面一段是json字符串,不管你JS作还是传递到后台作,你都要把json字符串转换成json对象来作才方便,至于是否去掉引号问题,那个就不需要你去单独作了,没实际意义
var Ajson = {"title":"\u660c\u5409","content":"","point":"87.997349|43.732302","isOpen":"0","icon":"w:21,h:21,l:0,t:0,x:6,lb:5"}
求助:怎么把js对象转为字符串
toString()使用对象的toString函数把对象转化为字符串。
// plain object
var obj = {};
obj.toString(); // 返回"[object Object]"
num.toString(); // 返回"2.2"
// 数组
arr.toString(); // 返回"1,2,3"
// 正则对象
var reg = new RegExp('\\d');
reg.toString(); // 返回"/\d/"
// 自定义对象
function Person(name, age) {
this.name = name;
字符串解析成 JSONthis.age = age;
}Person.prototype.toString = function () {
return 'name is ' + this.name + 'and age is ' + this.age;
};
var p = new Person('Scott', 31);
p.toString(); // 返回"name is Scott and age is 31" JSON.stringify
使用json序列化的方式把对象转换为字符串,该方式会把一个对象中所有标记为
// plain object
var obj = {name: 'Scott', age: 31};
JSON.stringify(obj); // 返回"{"name":"Scott","age":31}"
JSON.stringify(num); // 返回"2.2"
// 数组
JSON.stringifmap1.put("name", "张三");y(arrString data;); // 返回"[1,2,3]"
// 自定义类型
function Person(name, age, maritalStatus) {
this.name = name;
this.age = age;
enumerable: false,
configurable: false,
writable: true,
value: maritalState || 'unknown'
});
// 序列化的时候是没有maritalStatus的
JSON.stringify(p); // 返回"{"name":"Scott","age":31}"
// 但是maritalStatus确实真实存在于对象中的
p.maritalStatus; // 返回"married"
js字符串转换为json格式的问题
Object.defineProperty(this, 'maritalStatus', {输出结果为:var a=[{"text":"广东","value":"1"},{"text":"海南","value":"2"},{"text":"山西","value":"3"}];
var健值对中的键和值都要用""来包装吧。
在jsp页面中写js怎么把map转换成json?
后台中:jsp中可以使用alibaba的fastjson工具包转换成json字符串绑定到网页上,例如:
// json的值将被临时储存在这个变量中后台:
import com.alibaba.fastj它可以传入三个参数, 参数1 是需要字符串化的对象, 参数2 是用于指定对象序列化过程中需要被处理的属性, 参数3 是用于指定输出字符串的缩进格式。后两个参数是可选的,而我们最常用的就是只传一个参数。son.JSON;
String json = JSON.toJSONString(map);
request.setAttribute("json","json");
页面中:
var json = '<%=json %>'; //后台字符串渲染到页面上
var jsonObj = JSON.parse(json); //前端浏览器将字符串转换为js对象