web前端
文章平均质量分 75
_valora
菜鸟一枚,欢迎各路大神指点
展开
-
Web安全漏洞
本文介绍了5个最常见的Web应用漏洞,以及企业该如何修复初级问题,对抗那些针对这些漏洞的攻击。注入攻击和跨站脚本攻击Web应用主要有2种最常见的严重缺陷。首先是各种形式的注入攻击,其中包括SQL、操作系统、电子邮件和LDAP注入,它们的攻击方式都是在发给应用的命令或查询中夹带恶意数据。别有用心的数据可以让应用执行一些恶意命令或访问未授权数据。如果网站使用用户数据生成SQL查询,而不转载 2016-04-16 22:21:06 · 415 阅读 · 0 评论 -
Http协议
HTTP协议永远都是客户端发起请求,服务器回送响应。这样就限制了使用HTTP协议,无法实现在客户端没有发起请求的时候,服务器将消息推送给客户端。HTTP协议的主要特点可概括如下:1、支持客户端/服务器模式。支持基本认证和安全认证。2、简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。3、灵活:HTTP允许传输任意类型的数据对象。正在传输原创 2016-04-17 17:11:28 · 364 阅读 · 0 评论 -
行内元素与块级元素
行内元素与块级函数的三个区别1.行内元素与块级元素直观上的区别 行内元素会在一条直线上排列,都是同一行的,水平方向排列 块级元素各占据一行,垂直方向排列。块级元素从新行开始结束接着一个断行。2.块级元素可以包含行内元素和块级元素。行内元素不能包含块级元素。3.行内元素与块级元素属性的不同,主要是盒模型属性上行内元素设置width无效,height无效(可以设置line-height),margin上下无效,padding上下无效原创 2016-03-26 17:43:53 · 229 阅读 · 0 评论 -
JS原型链(补)
一 Prototype、__proto__与Object、Function关系介绍 Function、Object:Js自带的函数对象。 prototype:每一个函数对象都有一个显示的prototype属性,它代表了对象的原型(Function.prototype函数对象是个例外,没有prototype属性)。 __prot转载 2016-05-02 19:11:47 · 474 阅读 · 0 评论 -
prototype
prototype:显示原型。每一个函数对象都有一个显示的prototype属性,它代表了对象的原型(Function.prototype函数对象是个例外,没有prototype属性)。 __proto__:隐式原型。每个对象都有一个名为__proto__的内部隐藏属性,指向于它所对应的原型对象(chrome、firefox中名称为__proto__,并且可以被访问到)。原型链正是基于__proto__才得以形成(注:不是基于函数对象的属性prototype)。原创 2016-05-30 14:25:53 · 1007 阅读 · 0 评论 -
闭包
JS里的function能访问它们的: 1. 参数 2. 局部变量或函数 3. 外部变量(环境变量?),包括 3.1 全局变量,包括DOM 3.2 外部函数的变量或函数。 如果一个函数访问了它的外部变量,那么它就是一个闭包。 注意,外部函数不是必需的。通过访问外部变量,一个闭包可以维持(keep alive)这些变量。在内部函数和外部函数的例子中,外部函数可以创建局部变量,并且最终退出;但是,如果任何一个或多个内部函数在它退出后却没有退出,那么内部函数就维持了外部函数的局部数据。原创 2016-05-31 22:09:49 · 316 阅读 · 0 评论 -
JavaScript设计模式之接口
什么是接口接口是提供了一种用以说明一个对象应该具有哪些方法的手段。尽管它可以表明这些方法的语义,但它并不规定这些方法应该如何实现。例如,如果一个接口包含有一个名为setName的方法,那么你有理由认为这个方法的实现应该具有一个字符串参数,并且会把这个参数赋给一个name变量。有了这个工具,你就能按对象提供的特性对它们进行分组。例如,即使一批对象彼此存在着极大的差异,只要它们都实现了Comparable接口,那么在object.compare(anotherObject)方法中就可以互换使用这些对象。你还可原创 2016-06-01 18:53:27 · 502 阅读 · 0 评论 -
JS的深克隆
一、js中的对象谈到对象的克隆,必定要说一下对象的概念。 js中的数据类型分为两大类:原始类型和对象类型。(1)原始类型包括:数值、字符串、布尔值、null、undefined(后两个是特殊的原始值,这里不做详细的说明,我的上一篇博客有谈到过一些)(2)对象类型包括:对象即是属性的集合,当然这里又两个特殊的对象----函数(js中的一等对象)、数组(键值的有序集合)。 好了原创 2016-05-20 08:37:03 · 1311 阅读 · 0 评论 -
arguments.callee()
arguments.callee 在哪一个函数中运行,它就代表哪个函数。 一般用在匿名函数中。在匿名函数中有时会需要自己调用自己,但是由于是匿名函数,没有名子,无名可调。这时就可以用arguments.callee来代替匿名的函数。一、Arguments该对象代表正在执行的函数和调用他的函数的参数。[function.]arguments[n]参数function原创 2016-05-20 08:49:51 · 605 阅读 · 0 评论 -
JS的类式继承与原型式继承
参考文章:https://segmentfault.com/a/119000000259660类式继承(构造函数) JS中其实是没有类的概念的,所谓的类也是模拟出来的。特别是当我们是用new 关键字的时候,就使得“类”的概念就越像其他语言中的类了。类式继承是在函数对象内调用父类的构造函数,使得自身获得父类的方法和属性。call和apply方法为类式继承提供了支持。通过改变this的作用环原创 2016-05-20 13:13:24 · 440 阅读 · 0 评论 -
JSON
JSON的全称是”JavaScript Object Notation”,意思是JavaScript对象表示法,它是一种基于文本,独立于语言的轻量级数据交换格式。XML也是一种数据交换格式,为什么没有选择XML呢?因为XML虽然可以作为跨平台的数据交换格式,但是在JS(JavaScript的简写)中处理XML非常不方便,同时XML标记比数据多,增加了交换产生的流量,而JSON没有附加的任何标记,在JS中可作为对象处理,所以我们更倾向于选择JSON来交换数据。原创 2016-05-20 14:16:28 · 212 阅读 · 0 评论 -
一个通用的事件监听器函数
// event(事件)工具集,来源:github.com/markyunmarkyun.Event = {// 页面加载完成后readyEvent : function(fn) {if (fn==null) {fn=document;}var oldonload = window.onload;if (typeof window.onload != 'functi转载 2016-07-13 21:36:05 · 2445 阅读 · 0 评论 -
HTTP状态码
简单版 [ 100 Continue 继续,一般在发送post请求时,已发送了http header之后服务端将返回此信息,表示确认,之后发送具体参数信息 200 OK 正常返回信息 201 Created 请求成功并且服务器创建了新的资源 202 Accepted 服务器已接受请求,但尚原创 2016-07-13 21:48:18 · 413 阅读 · 0 评论 -
json与jsonp的区别、同源策略
有关json与jsonp的区别(json才是目的,jsonp只是手段)介绍如下所示:一言以蔽之,json返回的是一串数据;而jsonp返回的是脚本代码(包含一个函数调用);JSON其实就是JavaScript中的一个对象,跟var obj={}在质上完全一样,只是在量上可以无限扩展。简单地讲,json其实就是JavaScript中的对象(Object)和数组(Array,其实也转载 2016-07-15 10:44:23 · 3632 阅读 · 1 评论 -
拦截器与过滤器的区别
拦截器与过滤器的区别 :拦截器是基于java的反射机制的,而过滤器是基于函数回调。拦截器不依赖与servlet容器,过滤器依赖与servlet容器。拦截器只能对action请求起作用,而过滤器则可以对几乎所有的请求起作用。拦截器可以访问action上下文、值栈里的对象,而过滤器不能访问。在action的生命周期中,拦截器可以多次被调用,而过滤器只能在容器初始化时被调用一次原创 2016-06-19 23:03:47 · 245 阅读 · 0 评论 -
typeof
JS中的变量是松散类型(即弱类型)的,可以用来保存任何类型的数据。typeof 可以用来检测给定变量的数据类型,可能的返回值:1. ‘undefined’ --- 这个值未定义;2. 'boolean' --- 这个值是布尔值;3. 'string' --- 这个值是字符串;4. 'number' --- 这个值是数值;5. 'object' --- 这个值是对象或null;6. 'function' --- 这个值是函数。原创 2016-04-19 22:19:26 · 534 阅读 · 0 评论 -
JS的变量
JS中变量申明分显式申明和隐式申明。 var i=100;//显式申明,变量为局部变量 i=100;//隐式申明,变量为全局变量 当我们使用访问一个没有声明的变量时,JS会报错。而当我们给一个没有声明的变量赋值时,JS不会报错,相反它会认为我们是要隐式申明一个全局变量,这一点一定要注意。原创 2016-04-16 22:10:21 · 416 阅读 · 0 评论 -
Web安全漏洞(续)
本文介绍一些web安全漏洞产生的原因以及解决方案1 会话标识未更新 1.1 原因 在用户进入登录页面,但还未登录时,就已经产生了一个session,用户输入信息,登录以后,session的id不会改变,也就是说还是以前的那个session(事实上session也确实不会改变,因为没有建立新session,原来的session也没有被销毁)。 很多人只是让会话invalidate转载 2016-04-16 22:26:27 · 508 阅读 · 0 评论 -
http与HTTPS
HTPPS和HTTP的概念HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据原创 2016-05-01 22:52:04 · 421 阅读 · 0 评论 -
<!DOCTYPE html>的作用
作用:声明文档的解析类型(document.compatMode),避免浏览器的怪异模式。 document.compatMode:BackCompat:怪异模式,浏览器使用自己的怪异模式解析渲染页面。CSS1Compat:标准模式,浏览器使用W3C的标准解析渲染页面。 这个属性会被浏览器识别并使用,但是如果你的页面没有DOCTYPE的声明原创 2016-04-19 16:35:24 · 2409 阅读 · 0 评论 -
call()、apply()。
JavaScrtipt动态变换运行时上下文特性,这种特性主要就体现在apply, call两个方法的运用上.区分apply,call就一句话:foo.call(this, arg1,arg2,arg3) == foo.apply(this, arguments)==this.foo(arg1, arg2, arg3)call, apply都属于Function.prototype的一个方法,它是JavaScript引擎内在实现的,因为属于Function.prototype,所以每个Functio原创 2016-05-04 16:48:57 · 280 阅读 · 0 评论 -
转义字符
浏览器中的例如尖括号和斜杠都属于HTML的特殊功能字符,这些特殊功能字符会被浏览器解析为另一种内容。但是有时候,又必须需要再浏览器中直接显示这些特殊字符,于是就产生了若干个转义字符,这些转义字符的本质作用就是:通过另一个特殊形式表示这些功能性字符。在HTML中转义字符的基本表示形式是:&转义字符的编号;特殊符号命名实体十进制编码特原创 2016-04-19 20:28:58 · 1199 阅读 · 0 评论 -
CSS定位
CSS 定位机制CSS 有三种基本的定位机制:普通流、浮动和绝对定位。除非专门指定,否则所有框都在普通流中定位。也就是说,普通流中的元素的位置由元素在 (X)HTML 中的位置决定。块级框从上到下一个接一个地排列,框之间的垂直距离是由框的垂直外边距计算出来。行内框在一行中水平布置。可以使用水平内边距、边框和外边距调整它们的间距。但是,垂直内边距、边框和外边距不影响行原创 2016-04-19 18:59:35 · 317 阅读 · 0 评论 -
JS中的this
JS中的this关键字让很多新老JS开发人员都感到困惑。这篇文章将对this关键字进行完整地阐述。读完本文以后,您的困惑将全部消除。您将学会如何在各种不同的情形正确运用this。我们和在英语、法语这样的自然语言中使用名词一样地使用this。比如,“John飞快地跑着,因为他想追上火车”。请注意这句话中的代指John的代名词“他”。我们原本也可以这样表达,“John飞快地跑着,因为John想转载 2016-05-02 14:30:47 · 311 阅读 · 0 评论 -
css选择器
CSS 的作用是:1)修饰HTML元素;2)选择器:将样式进行合理的管理。于是乎进一步提供了一种将样式文件独立出来的技术,就是从HTML文件中将样式修饰内容独立成一个文本文件,那么在需要的HTML文件中就可以反复将这个样式文件引入。CSS 文件的创建CSS 文件就是一种普通的文本文件,其文件名称标准情况下是以.css作为后缀名结尾的。CSS文件的内容就是style标签中所书写的内容。CSS 文件的引入,需要使用Link标签。<link rel=”stylesheet” type=”text/cs原创 2016-05-04 15:02:14 · 364 阅读 · 0 评论 -
JavaScript instanceof 运算符深入剖析
要想从根本上了解 instanceof 的奥秘,需要从两个方面着手:1,语言规范中是如何定义这个运算符的。2,JavaScript 原型继承机制。转载 2016-05-03 20:55:33 · 287 阅读 · 0 评论 -
关于JS中的constructor与prototype
在学习JS的面向对象过程中,一直对constructor与prototype感到很迷惑,看了一些博客与书籍,觉得自己弄明白了,现在记录如下: 我们都知道,在JS中有一个function的东西。一般人们叫它函数。比如下面的代码js代码:[javascript] view plain copyfunction Person(nam转载 2016-05-03 20:20:51 · 278 阅读 · 0 评论 -
JS原型链
在JavaScript 中,每当定义一个对象(函数)时候,对象中都会包含一些预定义的属性。其中函数对象的一个属性就是原型对象 prototype。注:普通对象没有prototype,但有__proto__属性。转载 2016-05-01 22:46:44 · 248 阅读 · 0 评论 -
CSS盒模型
每一个 box 都包括一个 content 区域(元素的内容,如文本,图形等)以及环绕其四周的 padding(元素的内边距,填充部分)、border (元素的边框) 和 margin (元素的外边距) 区域。padding、border 和 margin 区域都包括 top、right、bottom、left 四部分。原创 2016-04-19 18:01:03 · 236 阅读 · 0 评论 -
进程状态
三态模型:在多道程序系统中,进程在处理器上交替运行,状态也不断地发生变化。进程一般有3种基本状态:运行、就绪和阻塞。(1)运行:当一个进程在处理机上运行时,则称该进程处于运行状态。处于此状态的进程的数目小于等于处理器的数目,对于单处理机系统,处于运行状态的进程只有一个。在没有其他进程可以执行时(如所有进程都在阻塞状态),通常会自动执行系统的空闲进程。(2)就绪:当一个进程获得了除处理机以外的一切所需资源,一旦得到处理机即可运行,则称此进程处于就绪状态。就绪进程可以按多个优先级来划分队列。例如,当一个进程原创 2016-07-12 19:20:34 · 642 阅读 · 0 评论