三.JS的API

3.1知识点(DOM)

1)DOM本质

  • 将html结构化成浏览器和JS可识别可操作的东西

2)变量计算---强制类型转换

  • 获取DOM节点
  • Attribute(对html标签属性的修改)
  • prototype(对JS对象的属性修改)

3)DOM结构操作

  • 增加DOM节点  .appendChild( )
  • 获取父元素  .parentElement
  • 获取子元素  .childNode
  • 删除节点  .removeChild( )

3.2知识点(BOM)

1)navigator

  • .userAgent

2)screen

  • .width
  • .height

3)location

  • .href
  • .protocal
  • .host
  • .pathname
  • search
  • .hash

4)screen

  • .back( )
  • .forward( )

3.3知识点(事件绑定)

1)通用事件绑定

  • .addEventlistener('事件',函数)

2)事件冒泡

  • event.stopPropagation( )

3)取消默认

  • event.preventDefault( )

4)代理

  • var target = e.target

3.4知识点(Ajax)

1)XMLHttpRequest

var xhr = new XMLHttpRequest( );
xhr.onreadystatechange = function( ){
if(xhr.readyState==4){
if(xhr.status==200){
alert(xhr.responseText);
}
}
};
xhr.open("GET","/api",false);
xhr.send(null);

2)状态码说明

  • 0-(未初始化)没调用send( )
  • 1-(载入)调用send( ),正发送请求
  • 2-(载入完成)send( )完,收完内容
  • 3-(交互)解析响应内容
  • 4-(完成)解析完可以在客户端用
  • 2xx-成功处理请求
  • 3xx-要重定向,浏览器直接跳转
  • 4xx-客户端请求错误
  • 5xx-服务端错误

3)跨域

  • 什么是跨域

    • 跨域条件:协议、域名、端口,有一个不同就算跨域
    • 浏览器有同源策略,不允许ajax访问其他域接口
  • 可以跨域的三个标签
    • <img src = xxx>
    • <link href = xxx>
    • <script src = xxx>

3.5知识点(JSONP)

1)实现原理

  • 加载某网址上的html文件http://www.xxxx.com/class.html
  • 服务器端不一定有一个class.html文件,服务器可根据请求动态生成文件返回

2)例子

  • 你要访问某网站的一个接口,该网站给你一个地址,你将它写在你的网站的<script src = xxx>里
  • 同时,还要写一个window.callback = function(data){//我们跨域得到的信息}

3.6知识点(存储)

1)cookie

  • 本身用于客户端和服务端通信,但有本地存储功能
  • 用document.cookie = ...获取和修改
  • 缺点:
    • 存量小,4kb
    • 所有http请求都带着,影响资源获取效率

2)locationStorage和sessionStorage

  • html为存储设计,最大存储量5M
  • API简单易用
    • .setItem(key,value)
    • .getItem(key)

3)三者区别

  • 容量
  • 是否携带到ajax中
  • API易用性

关于JS重点知识介绍到这里,这里不作详细介绍,只粗略列出常用知识点。

JavaScript重点知识(二)的更多相关文章

  1. AST抽象语法树——最基础的javascript重点知识,99%的人根本不了解

    AST抽象语法树——最基础的javascript重点知识,99%的人根本不了解 javascriptvue-clicommonjswebpackast  阅读约 27 分钟 抽象语法树(AST),是一 ...

  2. JavaScript重点知识(一)

    一.总括 基础知识: 1.变量 2.原型和原型链 3.作用域和闭包 4.异步和单线程 JS的API: 1.BOM,DOM操作 2.事件绑定 3.Ajax 4.JSOP 5.存储 二.基础知识 2.1知 ...

  3. 【转载】STL"源码"剖析-重点知识总结

    原文:STL"源码"剖析-重点知识总结 STL是C++重要的组件之一,大学时看过<STL源码剖析>这本书,这几天复习了一下,总结出以下LZ认为比较重要的知识点,内容有点 ...

  4. JavaScript基础笔记二

    一.函数返回值1.什么是函数返回值    函数的执行结果2. 可以没有return // 没有return或者return后面为空则会返回undefined3.一个函数应该只返回一种类型的值 二.可变 ...

  5. 学习javascript基础知识系列第二节 - this用法

    通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...

  6. 学习javascript基础知识系列第三节 - ()()用法

    总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...

  7. javascript常用知识点集

    javascript常用知识点集 目录结构 一.jquery源码中常见知识点 二.javascript中原型链常见的知识点 三.常用的方法集知识点 一.jquery源码中常见的知识点 1.string ...

  8. {Python之线程} 一 背景知识 二 线程与进程的关系 三 线程的特点 四 线程的实际应用场景 五 内存中的线程 六 用户级线程和内核级线程(了解) 七 python与线程 八 Threading模块 九 锁 十 信号量 十一 事件Event 十二 条件Condition(了解) 十三 定时器

    Python之线程 线程 本节目录 一 背景知识 二 线程与进程的关系 三 线程的特点 四 线程的实际应用场景 五 内存中的线程 六 用户级线程和内核级线程(了解) 七 python与线程 八 Thr ...

  9. AJAX重点知识的心得体会

    下面就为大家带来一篇 AJAX重点知识的心得体会.学习还是有点帮助的,给大家做个参考吧. AJAX是什么? 是Asynchronous Javascript And XML的首字母的缩写, 它不是一门 ...

随机推荐

  1. [转载]C#中IndexOf的使用

    注:此方法无法找出目标字符串第二次.第三次等出现的位置. 具体代码如下所示: 1 2 3 4 5 var array=['REG','2018','2018'];   array.indexOf(‘R ...

  2. 自学Java第二周的总结

    在这一周里我在网上学习了java的对象和类,了解了对象与类以及简单的用法.对象是类的一个实例(对象不是找个女朋友),有状态和行为.例如,一条狗是一个对象,它的状态有:颜色.名字.品种:行为有:摇尾巴. ...

  3. Django后端项目---- rest framework(3)

    一.版本 程序也来越大时,可能通过版本不同做不同的处理 没用rest_framework之前,我们可以通过以下这样的方式去获取. class UserView(APIView): def get(se ...

  4. Kali linux apt-get update 失败,无release……(最有效)

    设置源 编辑 /etc/apt/sources.list nano /etc/apt/sources.list 清空文件内所有内容后添加 deb http://mirrors.ustc.edu.cn/ ...

  5. 关于PRD、MRD、BRD文档

    笔者现在所在的公司有专职的产品经理,在职业生涯最长的那家公司,并没有专门的产品经理,虽然在创业公司期间有产品经理,但是似乎产品经理更多的是和客户沟通需求,反馈,并不输出正规意义上产品经理该有的输出.从 ...

  6. Android开发发布真机调试

    使用真机测试原因: 1. 模拟器启动慢,真机测试速度较快 2. 有些程序在真机测试才有效,模拟器存在bug,结果要以真机为标准 连接方法: 1.设置手机为开发者模式(设置->关于手机->连 ...

  7. 给自己的程序添加BugReport

    转载:https://www.easyicon.net/(免费icon) 转载:https://www.codeproject.com/Articles/5260/XCrashReport-Excep ...

  8. VC++使用MapFileAndCheckSum完成自检测

    转载:https://blog.csdn.net/lekonpeng/article/details/4150464 当我们完成一个工程,编译成可执行文件后,一般是不希望这个可执行文件被人改动的,那么 ...

  9. Android Studio报错view is not constrained

    在活动上面创建了两个按钮,在Design上看上去是两个按钮分开的,run一下,按钮就重合在一起了,而且一直报错,这个时候再去看一下Design,两个按钮重在一块,只显示一个按钮.如下图: button ...

  10. linux --- 2.常用命令 , python3, django安装

    一.常用命令 1.常识命令 ① w      显示终端连接数 ②pwd    我在哪 ③whoami      我是谁 ④which 命令        找到命令的绝对路径 2.linux 命令行的组 ...