1概述
JavaScript 是嵌入在网页中执行的脚本语言,专门实现网页的交互。
劣势:
1,良好的交互性
2,肯定的安全性
3,跨平台性,有浏览器就能够应用js
1.1CS和BS架构
CS(Client/Server):客户端----服务器构造。C/S构造在技术上很成熟,它的次要特点是交互性强、具备平安的存取模式、网络通信量低、响应速度快、利于解决大量数据。因为客户端要负责绝大多数的业务逻辑和UI展现,又称为胖客户端。它充分利用两端硬件,将任务分配到Client 和Server两端,升高了零碎的通信开销。C/S构造的软件须要针对不同的操作系统零碎开发不同版本的软件,加之产品的更新换代非常快,曾经很难适应百台电脑以上局域网用户同时应用。
BS(Browser/Server):浏览器----服务器构造,是目前利用零碎的倒退方向。BS是随同着Internet技术的衰亡,对C/S架构的改良,为了区别于传统的C/S 模式,特意称为B/S模式。在这种构造下,通过W3浏览器来进入工作界面,极少局部事务逻辑在前端(Browser)实现,次要事务逻辑在服务器端(Server)实现,造成三层(3-tier)构造。这样使得客户端电脑负荷大大简化(因而被称为瘦客户端),加重了系统维护、降级的收入老本,升高了用户的总体老本(TCO)。
2在html中引入js
第一种:在script标签外部能够书写JS代码:
<script> /* 在script标签外部能够书写JS代码和JS正文 */ alert( "引入JS的第 1 种形式...." );</script>
第二种、通过script标签引入内部的JS文件
<!-- 引入JS的第二种形式: 引入内部的JS文件 --><script src="demo.js"></script>
留神:尽量不自闭;标签内不编辑js代码;引入文件搁置head或boby内。
3js语法
3.1数据类型
1,数据类型(number)
js中的数据类型在底层都是浮点型,但在须要时会主动的和整型之间进行转换。
2.4+3.6 后果是6,而不是6.0;Infinity 正无穷大-Infinity 负无穷大 NaN 非数据
2,字符串(string)
JS中字符串属于根本数据类型,并且JS中的字符串类型能够应用单引号或者双引号引起来
var str3="Hel1o JS";// typeof str3--string var str4=new String("Hello JS");// typeof str4--Objectvar aa;var bb=3;cc='good';var dd=ee=100;
3,布尔类型(boolean)
值true和false
4,undefined和null
undefined类型的值只有一个,就是undefined,变量被定义,但未赋值null 空值,能够用于函数的返回值,示意函数返回的是一个空的对象
5,数组和对象
[] 数组 object{}对象 object
3.2js语句
if分支构造:
if (条件 1){ 当条件 1 为 true 时执行的代码}else if (条件 2){ 当条件 2 为 true 时执行的代码}else{ 当条件 1 和 条件 2 都不为 true 时执行的代码
switch分支构造:
switch(n){ case 1: 执行代码块 1 break; case 2: 执行代码块 2 break; default: 与 case 1 和 case 2 不同时执行的代码}
for循环构造:
for (语句 1; 语句 2; 语句 3){ 被执行的代码块}
while循环构造:
while (条件){ 须要执行的代码}
3.3js数组
js数组用于在单个的变量中存储多个值(其实就是一个容器)
js中的数组能够存储:数值,字符串,布尔值,undefined,null,对象,函数
申明形式一:(1)申明一个空数组var arr1 = [];(2)申明一个指定初始值的数组var arr2 = [88, "Hello", true, 123];申明形式二:(3)通过Array函数创立一个空数组var arr3 = new Array();(4)申明一个指定初始值的数组var arr4 = new Array(88, "Hello", true, 123);
3.4js函数
//定义函数function add( a, b ){ return a+b;} var funName = function ([参数1,参数2,…]){ 须要执行的代码}
4js组成
- ECMAScript形容了javascript语言的语法和根本对象
- 文档对象模型DOM(Document Object Model)与HTML网页API接口
- 浏览器对象模型BOM(Browser Object Model),与浏览器进行交互的API接口
4.1DOM树
DOM 是一项 W3C (World Wide Web Consortium) 规范,DOM(Document Object Model)文档对象模型为JS操作html文档所提供的一套API,通过这套API能够很不便的对html元素进行拜访及增删改查操作。
4.2window对象
window对象代表浏览器中一个关上的窗口
window.alert("text") 提示信息会话框window.confirm("text") 确认会话框window.prompt("text") 键盘输入会话框window.setIntervel(func, time) 每隔指定工夫(毫秒)执行,重复执行window.clearInterval() 革除工夫距离window.setTimeout(action,time) 期待指定工夫(毫秒)后再执行,执行一次window.open() 关上新的窗口window.close() 敞开窗口window.event 事件对象window.document 文档对象window.history 历史对象window.history.length 浏览过的页面数window.history.back() 后退window.history.forward() 后退window.history.go(i) 后退或后退i个页面(i>0后退,i<0后退
4.3Document对象
document代表整个HTML 文档,可用来拜访页面中的所有元素
document.URL 在同一窗口关上另一网页document.fileCreatedDate 文件建设日期,只读属性document.fileModifiedDate 文件批改日期,只读属性document.fileSize 大小,只读属性document.cookie 设置和读出cookiedocument.charset 字符集document.write() 动静向页面写入内容document.createElement(tag) 创立指定标签的元素document.getElementById(id) 取得指定id值的元素document.getElementsByName(name) 取得指定Name值的元素document.getElementsByClassName(name) 通过类名来查找元素document.body 文档主体,等价于<body></body>
学会简略应用,前期被jQuery封装,在前期被Vue框架封装
5事件
onclick 用户点击HTML元素ondblclick 用户双击HTML元素onchange 内容扭转事件,特地罕用于下拉框onmouseover 鼠标挪动到HTML元素上onmouseout 鼠标移开HTML元素onkeydown 用户按下键盘按键onkeyup 用户松开键盘按键onload 浏览器曾经实现页面加载onunload 浏览器敞开时执行,但通常无用,用户间接敞开浏览器甚至中断