对象
一:什么是对象?
1. 世间万物都可以用对象表示
2. 基于对象的编程语言中,用对象给真实的事物建模
3.对象的组成:属性 方法
二:Javascript对象介绍:
1. 对象是javascript的一种数据类型
2. 对象是一种复合值 它将很多值聚合在一起,可通过名字访问这些值。
3. 对象也可以看做属性的无序集合。每个属性都是 名:值 对。
4. 属性名是字符串,我们可以把对象看成是从字符串到值的映射。
5. 对象的其他叫法:散列(hash) 散列表(hashtable) 字典(direction) 关联数组(associative array)
三:JavaScript对象分类
1. 内置对象 如: 数组 函数 日期 正则 等...
2. 宿主对象 htmlElement对象是Js的宿主浏览器的对象<br>
1.浏览器中 window对象 (BOM 和 DOM)<br>
2.Node中 global 对象
3. 自定义对象 用户自定义的对象
四:对象的创建
1. 使用对象直接量
console.log({});
console.log({list:[10,23,243]});
var oop = {name:’大毛’,list:[1,2,3],getName:function(){}};
2. 通过构造函数(new)创建对象
var oop = new Array();
var oop = new Function();
var oop = new Object();
console.log(oop);
3. 通过Object.create(); --ECMA5定义的方法
--传入原型
--不继承构造函数和原型中的方法属性
var o = Object.create();
五:对象属性值的获取 设置 修改
1. . 运算符
ECMA老版本.for 或者.of 是非法 ECMA5放宽了限制,但是不建议使用
2. [ ] 运算符
var oop={name:’lili’,age:12}
document.write(oop.name);
document.write(oop[‘name’]);
区别
当属性名为变量时 只能使用[ ]
3.属性修改或设置
oop.name="abc";
oop['name']="abc";
六:对象方法的调用
var oop = {name:'aa',age:12,getInfo:function(a){
document.write(a);return 100;}
}
oop.getInfo();
oop.getInfo('aa');
七:全局对象window
预定义的对象 作用域链的顶层
用户定义的变量是全局对象的属性
用户定义的函数是全局对象的方法
八:对象中的this
调用本方法的对象
删除对象属性或方法
delete oop.age;
delete getInfo;
九:对象属性的检测
使用关键字 in
document.write('name' in o);
十:对象的直接量书写方式 --json格式
var oop = {
name:’xx’,
age:13,
getInfo:function(){},
"if":[], //关键字使用引号
"color":'黑色',
"cpu-i5":1500 //带-使用引号
}
十一:对象的遍历
var o = {x:1,y:2,z:3}
1. 使用 for in 遍历出对象的属性名<br>
for(var i in o){document.write(i)}
2. 使用Object.keys(o) 将属性名遍历到数组中
for(var j=0;j<key.length;j++){
console.log(obj[key[j]]);}
十二:数据结构的认识
https://developers.douban.com/ 远程数据API
http://api.douban.com/v2/movie/in_theaters
http://api.douban.com//v2/movie/coming_soon
浙公网安备 33010602011771号