乱七八糟的总结

一、对象
 
1.对象的功能   :想要存数据的时候写数据   对象就是用来存数据的; 对象可以储存结构非常复杂的数据;
 
扩展:    基本数据类型:string   number  undefined  null   Boolean  
               引用数据类型:  数组    函数    
 
             数组用映射的方式存储数据    包含 key  value键值对    是有序结构    key是自动生成自动        递增的东西        eg:var arr = [1,2,3,4,5]   
 
            对象是一个复杂映射    是无需自定义结构    可以快速的对数据进行查找;    避免重名的尴尬;    语义化更好了;
 
2.怎么把数据存入对象之中?    抽象;结构化数据;
 
  对象里面放的抽象的数据    优势:有自定义的名称 
 
拓展:    json    属于后端的术语    后端返回给前端的是字符串    json外部用{}包裹
 
 
二、this
 
this指向存在两种情况,一是在普通函数中,二是在构造函数中。this关键字只出现在函数体中。
 
(一)普通函数:
 
    1.this指向:在函数之中(普通函数),谁是当前函数的调用者(调用者),函数体内this的指向就指向谁
    2.所有没有xxx(对象).调用的函数    都是window所属的函数
        所有回调函数默认情况下,this指向都为window;
    
(二)构造函数:
 
    1.如何区分一个函数是普通函数还是构造函数?    看调用方式    是否用new调用;
    2.构造函数为了面向对象编程而服务;
 
    3. 构造函数:可以创造自定义对象的函数;
 
    4. instanceof    辨别某个对象来自于哪个构造函数
 
        eg: function Foo(){ };
        Foo函数的实例化对象 属于两个构造函数      object   /    Foo
        构造函数构造了一个对象;
 
   5.  如何向这个构造出来的对象(实例对象)编写方法;
          eg:    function Foo(){
                    // 构造函数内部,给对象编程,放入属性和方法;
                    //更改了构造函数内部的this指向;
                    //this    进行编程
                    //构造函数其实是对this(实例化对象)进行编程的地方
                    }
            实例化对象都有名字
            实例化对象和构造函数内部的this指向是一个对象
            构造函数内部的this指向,指向实例化对象,
 
    6.this指向只找第一层函数    ,就近原则
 
总结:this指向情况
                    1.普通函数

                    2.构造函数        1.没有xxx.调用的函数一律指向window            2.就近原则
 
三、面向对象的工具
 
1.面向对象的工具:1.构造函数    2.原型对象
 
2.原型是干嘛的,是公用的。
3.任意函数的原型:prototype;
 
4.constructor 表明了原型属于哪个函数,可以更改,一般不改
 
5.__proto__原型指针 原型链的原理
 
6.把引用类型放在原型之中的好处
 js本身有一个找寻机制
 
原型链  : 根据原型规则进行数据查询  
 
1.实例化对象之中 存在 原型指针
2.对象访问数据的时候 会根据原型链规则进行数据查询(原型链),进行数据查找  
 
访问对象之中一个数据的时候
1.如果有 直接返回
2.如果没有 查看 是否存在原型指针__proto__ 如果没有  undefined
3.如果没有那么沿着指针继续查找 返回原型内的数据
 
每个实例化对象之中 一定有一根原型指针指向当前构造函数的原型对象
 
我们不把数组或对象直接放在原型上
 
原型对象上尽量别放引用类型
 
在面向对象编程的时候 我们推荐把数据放在构造函数里(确保每个对象的数据来源独立),把方法放在原型之中(确保方法可以复用)
 
四、http,https    ,cookie
 
http:协议
https耗性能  但安全 
二者是前后端交互或通信的协议
 
1.保证数据完整性 传输结束之后 断开连接
2.保证高性能地数据传输
3.即用即走  缺点:不知道你是谁   无状态协议 
 
因为无状态协议容易造成非常糟糕的用户体验 所以我们要给每个http协议打上标签 
 
 
 
谁对cookie有操作权限?
    这次http经过的所有人都对cookie有操作权限   前端  后端 ;
 
CSRF(跨站点请求伪造)  XSS (脚本注入) 可能会遭受二者攻击,
 
加密后放在前端的cookie 叫    tocken 
 
cookie    是    http    的身份牌  
 
GET 只有header,没有body; POST 才有 body;
    1.header     部分用来验证
    2.body   用来装载内容
  
 一旦在浏览器上设置了cookie 那么这条cookie 就会跟随所有对应的域名的http请求
 
每个域名都有一套独立的cookie     cookie遵循同源策略
 
cookie的特性
    1.时效性
    2.cookie是纯文本
    3.cookie 大小限制 4kb
    4.条数限制 50条
    5.同源策略 访问路径是有限制的
 
cookie的本质    :浏览器创建的一个带有数据的文件
 
五、cookie操作
 
API
document.cookie 
设置cookie  
 
 
 
 
 
 

猜你喜欢

转载自www.cnblogs.com/hhrr1/p/9986013.html
今日推荐