前端简单小结

一、HTML(静态页面)

概述:

HTML(Hyper Text Markup Language)超文本标记语言,是做网站页面的最基础的开发语言,它的功能很弱,连脚本语言都算不上,类比java这种强语言,那就是一个天上一个地下,但它小而美,网站开发它却是霸主。

结构:

Ø  <html>文档声明,用来声明HTML文档所遵循的HTML规范。

Ø  <head></head>头部分,用来存放HTML文档的基本属性信息,比如网页标题、编码格式,这部分内容会被网页优先加载。

Ø  <body></body>体部分,用来存放网页要显示的数据。

Ø  <title></title>声明网页标题

Ø  <meta charset=""/>用来通知浏览器使用哪个编码来打开HTML文档,打开的方式一定要和保存文件时使用的编码一致,避免出现中文乱码问题。

入门案例:

<!doctype html>
<html>
  <head>
       <title>quickstart</title>
       <!-- 防止中文乱码 -->
       <meta charset="UTF-8"/>
    </head>
    <body>
       hello html ~
       你好呀
       <!--
           ctrl c / v 复制粘贴
           ctrl x / d 删除
           ctrl 上/下 箭头 调整位置
       -->
    </body>
</html>

二、CSS技术

CSS全称叫做层叠样式表stylesheet,是用来修饰HTML网页的一门技术,增强网页的展示能力。

主要是使用CSS属性来实现,最终可以将css代码和HTML网页代码进行分离,也可以提高css代码的复用性。(用法:放在标签内部,放在头文件中,用style标注)

选择器

<!--1.标签名选择器-->
<!--选中网页中的所有元素-->
<style> /* 在HTML中加入css*/

    span{ /* 标签名选择器,选中所有span */

       background-color: chartreuse; /* 背景颜色*/               
       font-size: 24px; /*字号*/
       font-family: 黑体;/* 字体 */
    }

</style>
<!--2.class选择器-->
<!--给需要修饰的元素,加class属性,可以同时使用多个属性,之间用空格隔开。-->
<style> /* 在HTML中加入css*/

     /* 选择class=a的元素 */

    .a{

       background-color: cornflowerblue; /*背景颜色*/
       color:red; /*字体颜色*/

    }

    .b{
       background-color: lightsalmon;
       color: black;
    }

</style>

<!--3.id选择器-->
<!--id属性的值在整个HTML中作为唯一标识的存在。
可以通过ID值选中指定的元素(#id值)-->
<p id="p1">123</p>

/* 使用id选中元素 */

#p1{
    text-indent: 200px; /* 首行缩进*/
}

网页是如何与后端交互的?

 

用户访问页面,页面触发事件创建XHR对象,进行ajax请求,请求访问服务器端,请求被web中间件拦截并进行处理,由控制层框架springmvc中的controller进行接收,controller请求业务层spring框架的service服务,service请求持久层mybatis框架的mapper映射,mapper访问数据库。操作完数据库,返回结果,mybatis封装成java对象传回service,service把java对象传回controller,controller把java对象又转换为json字符串,然后传回浏览器,浏览器传回给调用者XHR,XHR调用回调方法callback,callback进行json字符串的解析,从中拿到要展现的数据,通过javascript处理,最终回显到页面上。

可以看到这个调用过程是非常复杂的,跨越网络,跨域多个服务器,很多技术应用其中,而这一切的始作俑者是谁呢?谁让这一切成为可能,它就是javascript,它实现了用户的请求和响应,实现了数据的动态展现,使早期静态的网站走向了动态的网站。

三、JS

概述

JavaScript 是 web 前端开发者必学的三种语言之一:

HTML 定义网页的内容              H5

CSS 规定网页的布局               CSS3

JavaScript 实现网站的交互        ES6

JS是一门基于对象事件驱动脚本语言(在网络前端开发环境下,用于嵌入在客户端浏览器中的一段小程序,通常用来提高网页与用户的交互性,只局限于浏览器。

特点:

(1)JS是一门直译式的语言,直接执行的就是源代码.

是一边解释一边执行,没有编译的过程(不像Java需要提前编译为class文件再运行).

(2)JS是一门弱类型的语言,没有严格的数据类型.

优势:

(1)良好的交互性

(2)一定的安全性(JS被强制的要求,不能访问浏览器以外的东西,只能访问浏览器和浏览器内部的资源)

(3)跨平台性(Java语言具有跨平台性,是因为有虚拟机)

只要有浏览器的地方都能执行JS

异步请求局部刷新

  架构

主流方式:

 技术栈

JavaScript               形成交互

jQuery                   封装JavaScript,代码更加简洁高效

ajax                 异步请求

json                 数据传输

Web中间件(tomcat)        处理请求和响应

mysql数据库           存取数据

  执行过程

用户页面中触发ajax请求,访问后端服务器,Web中间件拦截用户请求,转发后端程序进行数据处理,一般还需访问数据库,然后逐层返回。数据库返回数据处理服务,数据处理服务返回Web中间件,Web中间件返回ajax调用,将数据封装到返回的js对象中,目前主流返回数据为json字符串。在回调callback的方法中解析json中的数据,最终回显到页面上。通常我们使用jquery封装过的ajax,写法更加简洁灵活。

四、jQuery

概念

jQuery是一门轻量的、免费开源的JS函数库,主要作用是用于简化JS代码

轻量的:代码或项目对该技术的依赖程度,依赖程度越低,这个技术越轻,反之,依赖程度越高,这个技术越重。推荐使用轻量级的技术框架

jQuery的核心思想:“写的更少,但做的更多”

jQuery库包含以下功能:

l  HTML 元素选取

l  HTML 元素操作

l  CSS 操作

l  HTML 事件函数

l  JavaScript 特效和动画

l  HTML DOM 遍历和修改

l  AJAX

五、json

概念:

ajax往往要完整应用还会配合一个技术:JSON,那什么是JSON呢?

JSON(JavaScript Object Notation,JS 对象简谱) 起名不咋地,非常拗口,我们就记住它是一种轻量级的数据交换格式即可。它基于 ECMAScript (js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。是xml的终结者,成为主流开发方式(ajax异步请求,json返回)。

格式:

[
  {
      "cbf":"0",
      "id":"J_100003717483",
      "m":"10000.00",
      "op":"2499.00",
      "p":"2099.00"
  }
]

结构特点:

l  数组[]

l  一条记录{},多条记录用逗号隔开 {},{},最后一条没有逗号

l  键值对 "p":"2099.00",kv用双引号括,多个用逗号隔开

转换

JSON已经作为浏览器内置支持,所以我们可以直接使用JSON对象:

l  json转obj        JSON.parse("json")

l  obj转json            JSON.stringify(obj)

六、ajax

概念:

ajax 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式、快速动态网页应用的技术。早期只有同步的方式,多个请求,只能顺序执行,只能等待执行。有了ajax异步技术,可以无需等待上一个请求执行完成,就可以直接发起请求。服务端返回后,ajax通过回调技术通知客户端程序,把响应的结果传递给用户事先写好的回调函数。通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页进行局部更新,提升网页的效率,用户无需等待页面的刷新,嗖的一下内容就变化了。改变原有整个页面刷新,造成页面晃眼的现象。所以这项技术一出现,就得到业界的推崇。

关键字:异步、回调、局部刷新。

格式:(七个参数)

 $.ajax({

              type:

              url:

              contentType:

              data:

              dataType:

              success: function(data){
   
              },

              error: function(data){
                
              }

           })

实现AJAX的基本步骤

要完整实现一个AJAX异步调用和局部刷新,通常需要以下几个步骤:

1.创建XMLHttpRequest对象,即创建一个异步调用对象.
2.创建一个新的HTTP请求,并指定该HTTP请求的方法、URL及验证信息.
3.设置响应HTTP请求状态变化的函数.
4.发送HTTP请求.
5.获取异步调用返回的数据.
6.使用JavaScript和DOM实现局部刷新.

七、NodeJS

谷歌Chrome的V8引擎执行JavaScript的速度非常快,性能非常好。于是开始有人在其基础上构建系统。2009年2月,Ryan Dahl在博客上宣布准备基于V8创建一个轻量级的Web服务器并提供一套库。这就是著名的Node.js,它采用事件驱动,采用主流NIO非阻塞I/O 模型,从而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。

​​​​​​​
 json和js对象的区别

json字符串: { "id":"100","name":"tony","salary":"30000" }

js对象:{ "id":100,"name":"tony","salary":30000 }

可以看出js对象中value值如果是整数,小数,无需加双引号

l  含义不同,json是一种数据格式,js表示类的实例

l  传输:json用于跨平台、跨网络传输,速度快;js不能传输

l  展现:json键值对方式,值是字符串不能是对象方法函数;js值不一定加双引号,值可以是对象、函数、字符串等

l  转换:JSON.parse(jsonStr) JSON已经作为浏览器内置对象,eval(json);JSON.stringify(obj)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值