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 浏览器敞开时执行,但通常无用,用户间接敞开浏览器甚至中断