JavaScript的学习要点
概要
了解Javascript历史以及Javascript三个不同组成部分:
- ECMAScript
- DOM(文档对象模型)
- BOM(浏览器对象模型)
ECMAScript
目标
掌握Javascript语法,熟悉对象的定义和使用,能熟练使用Javascript进行web开发。
要点
- 了解ECMAScript历史以及浏览器支持情况
基本语法
- 语句
- 运算符
数据类型
值类型,也就是原始类型:Undefined、Null、Boolean、Number 和 String。
var a; // undefined,
var b = null; // null
var c = true; // boolean,
var d = 10; // number
var e = “my”; // string
引用类型:Object, Boolean, Number和String
var a = new Boolean(true);
var b = new Number(10);
var c = new String(“my”);
- 常用对象: Boolean, Number, String, Date, Array, Math, RegExp, Function
- 函数的定义和使用,闭包的理解
- 对象的定义和使用
- 对象的继承
- 参考资源
DOM(主要学习HTML DOM)
目标
掌握HTML DOM定义的访问HTML元素的对象和基本属性,以及访问它们的基本方法;了解浏览器的差异;熟练使用Javascript操作HTML元素。
- 要点
- 掌握HTML DOM的概念:节点、属性
- 如何访问HTML元素(节点):
- 通过使用 getElementById() 方法
- 通过使用 getElementsByTagName() 方法
- 通过使用 getElementsByClassName() 方法
- 如何访问节点属性(获取、修改)、节点内容(获取、修改)
- 如何创建、删除、移动节点:
- createElement
- removeChild
- insertBefore
- appendChild
- cloneNode
- replaceChild
- 事件
- 事件的概念
- 如何给节点添加和移除事件(了解各自优缺点,建议使用推荐的方式来添加和移除事件)
- 直接在HTML元素上添加、移除事件
- 利用Javascript给节点添加、移除事件(了解不同浏览器的差异: Chrome, Firefox, IE(IE9之前和IE9之后不同))
- attachEvent和addEventListener(推荐)
- detachEvent和removeEventListener(推荐)
- 通过修改节点事件属性:htmlElement.onclick = function(){};
- 基本事件及处理函数中接受的参数:事件对象(Event):
- 基本事件
- 鼠标事件:onmousedown, onmouseup, onclick, ondblclick, onmousemove, onmouseover, onmouseout
- 键盘事件:onkeydown, onkeypress, onkeyup
- 焦点事件:onfocus, onblur
- 其他事件:onload, onchange
- Event对象的属性和方法
- target
- clientX, clientY, screenX, screenY
- altKey, shiftKey
- button
- keyCode(for IE), which(for Chrome, Firefox)
- preventDefault(): 通知浏览器不要执行与事件关联的默认动作
- stopPropagation(): 不再派发事件。
- 了解事件冒泡机制,学会如何利用冒泡来开发;了解如何阻止冒泡、阻止默认行为
- 基本事件
- 参考资源
BOM
- 目标
掌握BOM中提供的一些基本对象意义及使用,能熟练利用这些对象进行Web开发。
- 要点
- BOM概念及作用
- 对于Window, Navigator, Screen, History, Location对象作一个基本了解。
JavaScript的学习要点的更多相关文章
- JavaScript函数学习要点总结(一)
1.函数的最大作用是提供代码复用: 2.JavaScript函数是弱类型语言,定义函数时既不要声明函数的返回值,也不要声明函数的参数列表类型: 语法如下: function functionName( ...
- javascript基础学习(三)
javascript之运算符 学习要点: 表达式 运算符:一元运算符,算术运算符,关系运算符,逻辑运算符,*位运算符,赋值运算符 一.表达式 表达式有常量表达式,变量表达式,复合表达式. 二.算术运算 ...
- javascript基础学习(二)
javascript的数据类型 学习要点: typeof操作符 五种简单数据类型:Undefined.String.Number.Null.Boolean 引用数据类型:数组和对象 一.typeof操 ...
- javascript基础学习(十)
javascript之数组 学习要点: 数组的介绍 定义数组 数组元素 数组的方法 一.数组的介绍 数组中的元素类型可以是数字型.字符串型.布尔型等,甚至也可以是一个数组. 二.定义数组 1.通过数组 ...
- javascript基础学习(九)
javascript之基本包装类型 学习要点: 基本包装类型概述 Boolean类型 Number类型 String类型 一.基本包装类型概述 为了便于操作基本类型值,提供了3种特殊的引用类型:Boo ...
- javascript基础学习(八)
javascript之日期对象 学习要点: 日期对象 将日期对象转换为字符串 将日期对象中的日期和时间转换为字符串 日期对象中的日期 日期对象中的时间 设置日期对象中的日期 设置日期对象中的时间 与毫 ...
- javascript基础学习(七)
javascript之Object对象 学习要点: 创建Object对象 Object对象属性 Object对象方法 一.创建Object对象 new Object(); new Object(val ...
- javascript基础学习(六)
javascript之对象 学习要点: 对象的属性和方法 对象的原型 一.对象 对象其实就是一种引用类型,而对象的值就是引用对象的实例. 二.创建对象 在javascript中有两种对象,一种是系统内 ...
- javascript基础学习(五)
javascript之函数 学习要点: 函数的介绍 函数的参数 函数的属性和方法 系统函数 一.函数的介绍 1.函数就是一段javascript代码.可以分为用户自定义函数和系统函数. 如果一个函 ...
随机推荐
- JS模块化规范CMD之SeaJS
1. 在接触规范之前,我们用模块化来封装代码大多为如下: ;(function (形参模块名, 依赖项, 依赖项) { // 通过 形参模块名 修改模块 window.模块名 = 形参模块名 })(w ...
- Linux下rsync的用法
一.rsync的概述 rsync是类unix系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync.rsync是Linux系统下的文件同步和数据传输工具,它采用“rsync” ...
- 什么是APS高级计划排程(生产计划排产)系统主要功能模块有哪些?
什么是APS高级计划排程(生产计划排产)系统? APS高级计划排程(高级计划排产)系统主要解决“在有限产能条件下,交期产能精确预测.工序生产与物料供应最优详细计划”的问题.APS高级计划排程(高级计划 ...
- lr场景运行报错的解决方法
- BNUOJ 52505 Euclidean Geometry
结论. 算了好久不会算,最后看了样例猜出了结论.次长边全用上,再用最长边减去次长边. #include<bits/stdc++.h> using namespace std; int T; ...
- Python类总结-ClassMethod, StaticMethod
classmethod-把classmethod装饰的方法变成为类中的方法 作用: 把classmethod装饰的方法变成为类中的方法,这个方法直接可以被类调用,不需要依托任何对象 应用场景: 当这个 ...
- Django Rest Framework(版本、解析器、序列化、数据验证)
一.版本 程序也来越大时,可能通过版本不同做不同的处理 没用rest_framework之前,我们可以通过以下这样的方式去获取. class UserView(APIView): def get(se ...
- 类命名空间与对象、实例的命名空间 and 面向对象的组合用法
类命名空间与对象.实例的命名空间 创建一个类就会创建一个类的名称空间,用来存储类中定义的所有名字,这些名字称为类的属性 而类有两种属性:静态属性和动态属性 静态属性就是直接在类中定义的变量 动态属性就 ...
- MySQL笔记(四)之内建函数
AVG() 函数 AVG 函数返回数值列的平均值.NULL 值不包括在计算中. 语法: SELECT AVG(列) FROM 表: COUNT() 函数 COUNT() 函数返回匹配指定条件的行数. ...
- ARC 058
所以为啥要写来着........... 链接 T1 直接枚举大于等于$n$的所有数,暴力分解判断即可 复杂度$O(10n \log n)$ #include <cstdio> #inclu ...