JSON和对象操作

json的语法:

 var json = {
"name" : "cromwell", 
"age" : 50
};

“:“前面是属性名,后面是数据格式(可以是任何格式),用json.name即可输出该属性的值。
注意:定义的属性名称在严格模式下必须使用””;
json[]调用数据的时候和对象的属性写法相同即:

json["name"];  //获取json属性name的值
json.name = "新值"; //可以用来改写json的name属性的值

用json可以包括数组,数组也可以包括json,如:

var arr=[{"name":"abc","age":20},{"name":"bcd","age":30}];
var json = {"a":[1,2,3],"b":[4,5,6,7]};

这时我们如果想拿到name的值"abc"就要写成arr[0].name了

for in循环:
json没有长度,因此无法使用for循环遍历json。for循环里使用数字i作为循环的变量对应下标,而for in循环则使用attr就是属性名称来对应json的属性名:

   for(var attr in json){
    alert(attr+":"+json[attr])
    };
//window和document就是两个带有很多属性的对象,我们可以输出一下看看

注意:数组除了用for可以遍历,用for in也是可以的,这里属性名称就是arr的下标;而上面的两种嵌套式的json和数组需要for in和for循环配合来遍历,我们试着把他们遍历一下

将字符串数据转换成js数据:

eval方法:
把字符串解析成JS代码并运行,之前经常用将后台接口获得的字符串数据转换成json或者数组,但是由于该方法不安全而耗性能(解析一次运行一次),因此现在已经不推荐使用

JSON方法:
stringify是将对象转成字符串,但是json必须是严格模式,即key必须是字符串且必须是双引号;parse是将字符串转成对象

对象操作:

delete操作符,
语法:delete 对象名.属性名。
这是删除属性的唯一方法。
把属性设置为undefined或者null不能真正的删除属性,它只是移除了属性和值的关联

hasOwnProperty()函数,
语法:object.hasOwnProperty(proName)。
用途:判断某个属性是否属于某个对象
object为必需参数,是对象的实例;proName必需参数。一个属性名称的字符串值
如果object对象中存在指定名称的属性,则返回true,反之则返回false
hasOwnProperty 是 JavaScript 中唯一一个处理属性但是不查找原型的函数

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值