JavaScript对象和json
时间:2019-02-16
本文章向大家介绍JavaScript对象和json,主要包括JavaScript对象和json使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
一、对象
- 在js中,对象是一种数据类型,不同于其他语言中的对象,js对象可以直接写出来,对象的写法包括:
{}
字面量、new Object()
、Object.create({})
。格式是{键:值},多个键值对用逗号分隔,键表示属性名,值表示属性值。 - 键可以加引号也可以不加引号,可以写字符串和数值类型,其他变量类型不能书写。值必须存储数据,可以是任意数据类型,和数组类似。
- 在es6中,如果键名和变量名一致,那么可以直接写变量进去,变量名表示键的值,变量值表示值。
- 查找一个属性的值:使用中括号语法或者.语法获取。对于类数组,其实是个对象,有length属性和熟知的键。
- 修改属性的值:
obj.name = "张三";
。 - 添加值:
obj.age = 18;
直接添加。 - 删除键值对:
delete obj.name;
- 判断对象中是否存在某个属性,使用
in
关键字:"name" in obj
存在为true,不存在为false。
var stu = {
name:"张三",
0:"000",
1:"111",
2:"222",
length:3
};
stu.name = "李四";
stu.xx = NaN;
stu.height = 180;
console.log(stu[0]); //000
console.log(stu.0); //报错
if("xx" in stu){
alert("存在");
}else{
alert("不存在");
}
二、遍历对象
- 数组自带length属性,但是类数组本质是一个对象,没有默认的length属性。
- 对象的遍历使用for…in循环,但是for in循环性能太低了,因为for in循环不仅遍历对象的每一个属性,而且还遍历了对象的原型链。
var oArr = {
0:'你好',
1:'他好',
2:'我也好',
lenght:3
}
console.log(oArr);
for(var i = 0; i<oArr.length;i++){
console.log(oArr[i]);
}
var obj = {
name:"张三",
age:18,
length:2,
}
for(var x in obj){
console.log(x);
}
三、json
- json:JavaScript Object Notation “js 对象 标记”,是通用的数据传输格式,本质上是一个字符串。
- 长得像对象,但是写法不一样,键和值必须用双引号包裹。
- 序列化:
JSON.stringify
只有对象、数组、字符串、数值、布尔值、null可以序列化为json。 - 反序列化:
JSON.parse
把json转换为js对象。 JSON.parse/stringify
不兼容IE7及以下,解决兼容性问题:使用json2.js。
var obj = {
name:"张三",
age:[1,2,3],
y:null,
o:{name:"李四"},
sing:function(){
alert("song");
}
}
console.log(JSON.stringify(obj));
var json = '{"name":"lisi"}';
var json2 = '["name","age","王五"]';
var json3 = "你好";
var json4 = "123";
console.log(JSON.parse(json));
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法