从零开始学前端-最适合小白的JavaScript入门教程

Javascript,从“最被误解的语言”,最后神奇地转变成为“最流行的语言”,证明它经受得起时间的考验。虽然单独来看,它的交互设计有些失败,但是加上Ajax的完美配合,javascript就成了一款轻便并且又实用的好语法。

如果想要更高效、更系统地学会javascript,最好采用边学边练的学习模式。

如果觉得javascript的学习难度较高,不易理解,建议采用视频的方式进行学习,更易初学者吸收:

在线观看:

https://www.bilibili.com/video/BV1Ft411N7R3

资料下载:

http://www.bjpowernode.com/javavideo/207.html

JavaScript介绍

(1)简称JS

(2)一种脚本语言,脚本语言的特点

  • Java语言是一种非脚本语言,属于编译型语言。
  • JavaScript语言是一种脚本语言(解释型语言),JavaScript的“目标程序”是以普通文本的形式保存。用记事本是可以直接打开的。浏览器打开就直接解释执行了。

(3)JavaScript和JScript的关系

JavaScript是网景公司开发的,javascript之父是 布兰登艾奇。JavaScript前身叫做LiveScript。当时网景公司开发JavaScript的目的是为了占领“浏览器”市场。网景公司有一个浏览器,当时非常著名:领航者浏览器Navigator。JavaScript语言是为领航者浏览器专门量身打造的。JavaScript只支持Navigator浏览器,其它浏览器不支持。这个时候微软慌了,马上组建团队,开发了一种编程语言叫做Jscript,专门和JavaScript抗衡的,只支持IE浏览器。网景公司在某个历史阶段,和SUN公司有合作,SUN公司把LiveScript改名为JavaScript。

(4)JavaScript主要用来操作HTML中的节点,产生动态效果

JavaScript是一门编程语言,专门用来操作HTML页面中的节点,让网页产生动态效果的。JavaScript中也有变量、数据类型、运算符、if语句、for循环、标识符、关键字等。

(5)JavaScript和Java的区别

JavaScript运行在浏览器当中,浏览器中有执行JS代码的内核。

Java运行在JVM当中。JavaScript和Java没有任何关系。

Java语言是SUN公司开发的,JavaScript这个名字是SUN公司给起的名。

JavaScript选择是对的,真的搭上了Java的顺风车!

JavaScript包括三块:ECMAScript、DOM、BOM

(1)ECMAScript是ECMA制定的262标准,JavaScript和JScript都遵守这个标准,ECMAScript是JavaScript核心语法

(2)DOM编程是通过JavaScript对HTML中的dom节点进行操作,DOM是有规范的,DOM规范是W3C制定的。(Document Object Model:文档对象模型)

(3)BOM编程是对浏览器本身操作,例如:前进、后退、地址栏、关闭窗口、弹窗等。由于浏览器有不同的厂家制造,所以BOM缺少规范,一般只是有一个默认的行业规范。(Browser Object Model:浏览器对象模型)

嵌入JS三种方式以及JS的注释

  • 行间事件

(1)

(2)JS是一种基于事件驱动型的编程语言,当触发某个事件之后,执行一段代码

(3)JS中的任何一个事件都对应一个事件句柄,例如鼠标单击事件click,对应的事件句柄就是onclick,事件句柄都是以标签的属性方式存在。在事件句柄后面可以编写JS代码,当触发这个事件之后,这段JS代码则执行了。

(4)JS中的字符串可以使用单引号括起来,也可以使用双引号括起来

(5)window是JS中的内置BOM顶级对象,代表当前浏览器窗口,window对象有一个alert()函数,该函数可以在浏览器上弹出消息框。

(6)JS中的一条语句结束后可以使用“;”结尾,也可以不写。

(7)window.alert()中的window.可以省略。

  • 页面script标签嵌入

(1)

(2)window.alert()的执行会阻塞当前页面的加载

(3)一个页面中可以写多个脚本块

(4)脚本块的位置没有限制

(5)暴露在脚本块中的JS代码在页面打开的时候遵循自上而下的顺序依次逐行执行

  • 外部引入

(1)

(2)

(3)这种写法错误:

(6)用户点击按钮,调用函数


  • 局部变量和全局变量

(1)局部变量:函数的形参是局部变量,另外使用var关键字在函数体中声明的变量是局部变量,函数执行结束之后,局部变量的内存就释放了。

(2)全局变量:在函数体外声明的变量属于全局变量,另外不使用var关键字声明的变量无论位置在哪,它都是全局变量,全局变量在浏览器关闭时销毁。

JS数据类型

  • typeof运算符
  • JS中为什么会有typeof运算符
  • typeof运算符怎么用,代码怎么写

语法格式是:

function sum(a, b){
if("number" === typeof a && "number"=== typeof b){
return a + b;
}
alert("数据格式不合法");
return 0;
}

typeof运算符的运算结果都是全部小写的字符串

"undefined"

"number"

"string"

"boolean"

"object"

"function"

ES6版本之前的数据类型有6种

  • Undefined

只有一个值undefined,变量声明没赋值,系统默认赋值undefined

  • Number

(1)Number类型包括哪些值:0,1,-1,3.14,12,300,NaN,Infinity

(2)parseInt()函数

(3)parseFloat()函数

(4)Math.ceil()函数:向上取整

(5)isNaN()函数

  • String

(1)可以使用单引号,也可以用双引号

(2)JS中的字符串包括小String,也包括大String,小String属于原始类型,大String是JS的内置对象,大String属于Object类型。

(3)无论大String还是小String,它们的属性和方法都是通用的。

(4)字符串中常用方法讲一些,主要讲解字符串的substr()和substring()的区别。

  • Null

(1)该类型只有一个值:null

(2)typeof运算符的执行结果是"object"

  • Boolean

(1)只有两个值:true和false

(2)Boolean()函数

(3)JS中的if语句自动调用Boolean()函数。

  • Object

(1)JS中如何定义一个类。

(2)JS中如何创建一个对象。

(3)JS中如何访问对象属性,调用对象的方法。

(4)JS中的一个函数,既是函数声明,又是类的定义,同时函数名也可以看做构造方法名。直接调用函数表示普通函数调用,如果使用new运算符来调用该函数则会创建对象。

(5)使用prototype属性动态的给对象扩展属性以及方法。

  • ES6版本及之后包括的数据类型有8种

除了以上6种类型之外,还有两种类型分别叫做:Symbol和BigInt

null NaN undefined区别

(1)=、==、===三者的区别

(2)null NaN undefined三者类型不同,null和undefined的值可以等同

JS中的事件

  • 常用事件

(1)blur失去焦点

(2)change下拉列表选中项改变,或文本框内容改变

(3)click鼠标单击

(4)dblclick鼠标双击

(5)focus获得焦点

(6)keydown键盘按下

(7)keyup键盘弹起

(8)load页面加载完毕

(9)mousedown鼠标按下

(10)mouseover鼠标经过

(11)mousemove鼠标移动

(12)mouseout鼠标离开

(13)mouseup鼠标弹起

(14)reset表单重置

(15)select文本被选定

(16)submit表单提交

  • 注册事件的两种方式

(1)在标签中使用事件句柄的方式注册事件

(2)在页面加载完毕后使用JS代码给元素绑定事件


 

重点:通过事件注册,理解回调函数的概念

  • 代码的执行顺序

这是一种错误的写法:




这样写:




或者这样写:




  • 通过keydown事件演示回车键13,ESC键27

JS运算符之void

运算符就讲这一个,告诉学生其它运算符和java一样用。void主要讲:javascript:void(0)的用法。

JS之控制语句

告诉学生控制语句和Java一样用,课堂上不再讲解。只讲一下for..in语句的使用,使用for..in语句遍历数组,以及遍历一个对象的属性。

JS内置对象

  • Array

(1)创建数组

(2)JS中的数组特点

(3)JS中数组对象常用方法:push,pop,join,reverse等。

(4)数组遍历

  • Date

(1)new Date() 获取当前系统时间

(2)new Date().getTime()获取时间戳

(3)new Date().getFullYear()、getMonth()等方法。

BOM和DOM的区别与联系

BOM: Browser Object Model(浏览器对象模型),通过BOM的对象和方法可以完成浏览器窗口的操作,例如:关闭浏览器,前进,后退,修改地址栏上的地址等,这些操作都属于BOM。BOM的顶级内置对象是window。

DOM: Document Object Model(文档对象模型),通过DOM的对象和方法可以完成网页中元素的增删改,让网页产生动态效果,DOM的顶级内置对象是document。

DOM编程案例

  • innerHTML innerText操作div和span
  • JS的正则表达式(Regular Expression)
  • 正则表达式概述

(1)正则表达式是一门独立的学科,不止用在JS中

(2)正则表达式专门用来做字符串格式匹配的

  •  常用的正则表达式符号

参考30分钟入门正则表达式:

^ 字符串开始

$ 字符串结束

\s 空白

* 0~N次

+ 1~N次

? 0或1次

{3} 3次

{3,} 3~N次

{3,5} 3~5次

(a|b) a或b

[a-z] a到z

[^abc] 不是abc

  • 会写简单的正则表达式

(1)qq号正则

(2)必须由数字和字母组成,不能含有其它符号的正则

(3)给学生一些常用的正则表达式

  • 会创建JS中的正则表达式对象

(1)var regExp = new RegExp("^[1-9][0-9]{4,}$");

(2)var regExp = /^[1-9][0-9]{4,}$/;

  • 会调用JS中正则表达式对象的test()函数

写一个校验用户名只能由数字和字母组成的案例

  • 表单验证

(1)用户名不能为空

(2)用户名必须在6-14位之间

(3)用户名只能由数字和字母组成,不能含有其它符号(正则表达式)

(4)密码和确认密码一致,邮箱地址合法。

(5)统一失去焦点验证

(6)错误提示信息统一在span标签中提示,并且要求字体12号,红色。

(7)文本框再次获得焦点后,清空错误提示信息,如果文本框中数据不合法要求清空文本框的value

(8)最终表单中所有项均合法方可提交

  • 复选框全选和取消全选

document.getElementById()

document.getElementsByName()

document.getElementsByTagName()

以上三个函数告知学生很重要

  • 获取下拉列表选中项的value

change事件

  • 显示网页时钟

window.setInterval()

window.clearInterval()

主要两个函数

捎带着提一下window.setTimeout()

  • 拼接html的方式,设置table的tbody

你可能感兴趣的:(Java,编程语言,js,javascript,java,python,html)