自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 资源 (2)
  • 收藏
  • 关注

原创 require.js shim 配置

require.config的参数配置原因:理论上,require.js加载的模块,必须是按照AMD规范、用define()函数定义的模块。但是实际上,虽然已经有一部分流行的函数库(比如jQuery)符合AMD规范,更多的库并不符合。那么,require.js是否能够加载非规范的模块呢?回答是可以的。这样的模块在用require()加载之前,要先用require.config()方法,定义它们的一些

2017-07-16 18:01:45 677

转载 BSON与JSON的区别

BSON是由10gen开发的一个数据格式,目前主要用于MongoDB中,是mongodb的数据存储格式。BSON基于JSON格式,选择JSON进行改造的原因主要是JSON的通用性及JSON的schemaless的特性。BSON主要会实现以下三点目标:1.更快的遍历速度 对JSON格式来说,太大的JSON结构会导致数据遍历非常慢。在JSON中,要跳过一个文档进行数据读取,需要对此文档进行扫描才行,需

2017-06-16 11:19:06 436

转载 Lazyman

实现一个LazyMan,可以按照以下方式调用: LazyMan(“Hank”)输出: Hi! This is Hank!LazyMan(“Hank”).sleep(10).eat(“dinner”)输出 Hi! This is Hank! //等待10秒.. Wake up after 10 Eat dinner~LazyMan(“Hank”).eat(“dinner”).eat(“su

2017-05-22 09:17:43 488

原创 DOM的高级应用-------关于Ul中的 li 的排序

1、排序 • 移动Li • 元素排序:转换——排序——插入 //父节点.appendChild()的实现,会把这个元素节点从ul里面删除,然后在加入。2、排序的实现代码<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>DOM中的UL的排

2017-05-20 18:32:38 765 2

原创 js实现二分查找

二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。function binary_search(arr,key){ var low=0; var high=arr.length-1; while(low<=high){ var mid=parseInt((low+high)/2); if(arr[mid]==key)

2017-04-16 22:23:51 365

原创 js数组方法总结

方法名 参数及用法 返回值 是否修改原数组 push 向数组的末尾添加一个或更多元素 返回新的长度 是 pop 删除数组的最后一个元素 返回数组的最后一个元素 是 shift 删除数组的第一个元素 返回数组的第一个元素 是 unshift 向数组的开头添加一个或更多元素 返回新的长度 是 reverse 颠倒数组中元素

2017-04-16 16:24:47 378

原创 js获取css属性中的值

function getStyle(obj,attr){ if(obj.currentStyle){ //IE return obj.currentStyle[attr]; } else{ //FireFox return getComputedStyle(obj,false)[attr]; //false是一个虚元素

2017-04-16 14:23:57 1650

原创 js当中对象属性的存储

对象的内容是由一些存储在特定命名位置的(任意类型的)值组成的,我们称之为属性但是需要强调的一点是,当我们说“内容”时,,似乎在暗示这些值实际上被存储在对象内部,但是这只是它的表现形式。在引擎内部,这些值的存储方式是多种多样的,一般并不会存在对象的容器内部。存储对象容器内部的是这些属性的名称,他们就像指针一样,指向这些真正的存储位置var Person = { name:luozc, age:

2017-04-16 13:50:32 5356

原创 二叉树-输出树中从根到每个叶子节点的路径

void AllPath(Bitree T, Stack &S)//输出二叉树上从根到所有叶子结点的路径{ if(T) { Push(S,T->data); if(!T->Left&&!T->Right)//如果左指针和右指针同时为空,才说明该节点为叶子节点 PrintStack(S); else { AllPath(T->Left,S)

2017-04-16 13:17:23 2814 1

原创 Javascript中的apply、call、bind

apply、call   在 javascript 中,call 和 apply 都是为了改变某个函数运行时的上下文而存在的,换句话说,就是为了改变函数体内部 this 的指向。  JavaScript 的一大特点是,函数存在「定义时上下文」和「运行时上下文」以及「上下文是可以改变的」这样的概念。   function fruits() {}fruits.prototype = { col

2017-04-15 18:50:37 463

原创 函数柯里化

含义:柯里化(Currying)是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数且返回结果的新函数的技术。 因此柯里化的过程是逐步传参,逐步缩小函数的适用范围,逐步求解的过程。柯里化一个求和函数var add = function (a, b, c) { return a+b+c;};var addCurrying= functio

2017-04-15 17:28:07 926

原创 cookies,sessionStorage,localStorage的区别

(1)存储方式不同 cookie数据始终在同源的http请求中携带(即使不需要),而sessionStorage和localStorage不会自动把数据发给服务器仅保存在本地(2)存储大小限制 cookie数据不可超过4K,而它两的可以达到5M或更大(3)数据有效期不同 sessionStorage仅在当前浏览器窗口关闭前有效,localStorage始终有效,cookie只在设置

2017-03-13 17:29:47 288

原创 css3弹性盒模型(Flexbox)

这几天又看了一遍css3的弹性盒模型,这是一个可以让你告别浮动、完美实现垂直水平居中的新特性。Flexbox是布局模块,而不是一个简单的属性,它包含父元素和子元素的属性。Flexbox布局的主体思想是似的元素可以改变大小以适应可用空间,当可用空间变大,Flex元素将伸展大小以填充可用空间,当Flex元素超出可用空间时将自动缩小。总之,Flex元素是可以让你的布局根据浏览器的大小变化进行自动伸缩。创建

2017-03-11 10:58:41 375

原创 JavaScript之删除数组中重复元素的方法

1.将数组逐个搬到另一个数组中,当遇到重复元素时,不移动,若元素不重复则移动到新数组中function unique(arr){ var len = arr.length; var result = [] for(var i=0;i<len;i++){ var flag = true; for(var j

2017-03-09 14:06:15 442

原创 url中search字符串解析为json对象

var url = "http://www.taobao.com/index.php?key0=0&key1=1"; var obj = parseQueryString(url); function parseQueryString(argu){ var str = argu.split('?')[1]; var

2017-03-09 13:48:42 869

转载 BFC 神奇背后的原理

一、BFC是什么? 在解释 BFC 是什么之前,需要先介绍 Box、Formatting Context的概念。  Box: CSS布局的基本单位  Box 是 CSS 布局的对象和基本单位, 直观点来说,就是一个页面是由很多个 Box 组成的。元素的类型和 display 属性,决定了这个 Box 的类型。 不同类型的 Box, 会参与不同的 Formatting Context(一个决定如何渲

2017-03-07 17:35:52 291

原创 web攻防之SQL注入、XSS、CSRF

1.SQL注入 SQL注入式攻击,就是攻击者把SQL命令插入到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令。 攻击者通过在应用程序预先定义好的SQL语句结尾加上额外的SQL语句元素,欺骗数据库服务器执行非授权的查询,篡改命令。  它能够轻易的绕过防火墙直接访问数据库,甚至能够获得数据库所在的服务器的系统权限。在Web应用漏洞中,SQL Injection 漏洞的风险要高

2017-03-05 11:42:40 366

原创 js中的事件委托

原理:事件委托,从名字上就能理解,就是自己的事情交给别人去做(将事件委托给别人) 实现方法:onclick,onmouseover,onmouseout等就是事件。委托,就是让别人来做。利用冒泡的原理,把事件加到父级上,触发执行效果。假设我们有一个父元素div,里面有很多子元素,但我们关心的是里面的一个带有”classA” CSS类的A标记:// 获得父元素DIV, 添加监听器...docume

2016-12-13 21:02:33 364

原创 圣杯布局(双飞翼布局)

圣杯布局是讨论「三栏液态布局」的实现,它最早出自于谁或许不得而查了。所谓液态布局是相对固态布局而言的,固态布局就是固定值不变的布局,液态就好比在容器里到了一杯水,它可以随着容器宽度的变化而自适应宽度。(说白了,就是三栏布局,两边固定,中间自适应)<div id="header">#header</div><div id="container"> <div id="center" class="c

2016-12-13 19:20:12 302

原创 js字符串反转

(1)我们都知道数组有一个成员函数reverse()可用来将数组成员进行反转,那么我们可不可以将一个字符串转换为数组,然后对其进行reverse()操作呢?答案当然是可以的。话不多说,见代码:function revStr(str){ return str.split("") //将字符串转换为字符数组 .reverse() //将数组中的字进行倒转 .join("")

2016-12-12 17:54:19 817

原创 substr和substring的用法和区别

substr 和 substring都是JS 截取字符串函数,两者用法很相近,下面是两者的语法很示例:substr 方法 返回一个从指定位置开始的指定长度的子字符串。 stringvar.substr(start [, length ])参数 stringvar 必选项。要提取子字符串的字符串文字或 String 对象。 start 必选项。所需的子字符串的起始位置。字符串中的第一个字符

2016-12-12 17:23:29 1284

原创 鼠标点击li元素,弹出各自索引值

这篇博客我主要是把鼠标点击li元素,弹出各自索引值的几种方法进行总结。问题:如下代码所示有好多li元素。实现的效果是当鼠标点击某个li元素时弹出自己的索引值(当然这里不是弹出它的innerHTML,这是凑巧索引值和它的innerHTML相等) <ul id="ul1"> <li>0</li> <li>1</li> <li>2</li>

2016-11-19 16:12:55 3440 2

原创 prototype和__proto__

一、prototype和__proto__的概念prototype是函数的一个属性(每个函数都有一个prototype属性),这个属性是一个指针,指向一个对象。它是显示修改对象的原型的属性。__proto__是一个对象拥有的内置属性(注意:prototype是函数的内置属性,__proto__是对象的内置属性),是JS内部使用寻找原型链的属性。用chrome和FF都可以访问到对象的proto属性,I

2016-11-16 15:55:53 299

原创 (跨域问题《二》jsonp)

Jsonp(JSON with Padding) 是 json 的一种”使用模式”,可以让网页从别的域名(网站)那获取资料,即跨域读取数据。 客户端代码:<!DOCTYPE html><html><head><meta charset="utf-8"><title>JSONP 实例</title></head><body> <div id="divCustomers"></di

2016-11-16 14:31:26 243

原创 Cookie知识总结

主要用途:目前Cookies 最广泛的是记录用户登录信息,这样下次访问时可以不需要输入自己的用户名、密码了——当然这种方便也存在用户信息泄密的问题,尤其在多个用户共用一台电脑时很容易出现这样的问题。生存周期:Cookie可以保持登录信息到用户下次与服务器的会话,换句话说,下次访问同一网站时,用户会发现不必输入用户名和密码就已经登录了(当然,不排除用户手工删除Cookie)。而还有一些Cookie在用

2016-11-07 22:27:45 345

原创 Ubuntu-server搭建lamp环境

1.更新软件源sudo apt-get update2.安装Apachesudo apt-get install apache23.查看Apache是否安装成功apache2 –v如下所示,表示搭建成功 4 通过浏览器访问服务器的IP,如果出现Apache欢迎界面,表示安装成功,如下所示: 5.安装PHP5sudo apt-get install php56.查看PHP5的版本php5 –v

2016-09-29 17:36:25 244

原创 JS面向对象(一)

“面向对象编程”的第一步,就是要生成“对象”。前面说过,“对象”是单个实物的抽象。通常需要一个模板,表示某一类实物的共同特征,然后“对象”根据这个模板生成。JavaScript语言的对象体系,不是基于“类”的,而是基于构造函数和原型链 JavaScript语言使用构造函数作为对象的模板。所谓“构造函数”,就是专门用来生成“对象”的函数。它提供模板,描述对象的基本结构。一个构造函数,可以生成多个对象

2016-09-26 21:47:40 255

原创 console对象

console对象是JavaScript的原生对象,它有点像Unix系统的标准输出stdout和标准错误stderr,可以输出各种信息到控制台,并且还提供了很多额外的有用方法 它的常见用途有两个:1.调试程序,显示网页代码运行时的错误信息。 2.提供了一个命令行接口,用来与网页代码互动。 console对象提供的各种方法,用来与控制台窗口互动。 log(),info(),debug()

2016-09-24 22:04:28 314

原创 CSS浏览器兼容性----Hack

CSS Hack大致有3种表现形式, CSS类内部Hack、 选择器Hack以及HTML头部引用(if IE)Hack, CSS Hack主要针对IE浏览器。 类内部Hack:比如 IE6能识别下划线”“和星号” * “,IE7能识别星号” * “,但不能识别下划线”“,而firefox两个都不能认识。等等 选择器Hack:比如 IE6能识别html .class{},IE7能识别+htm

2016-09-22 00:03:07 315

原创 js Array

数组的创建: var arr=new Array(3); //创建一个包含3项的数组,每一个初始值是undefine var arr=new Array(“abc”,”123”); var arr=Array(3); //也可以省略new操作符 var arr=[ ]; 数组最多可以容纳(2^32)-1个项数组元素的增添和删除 push() //可接收任意数量参

2016-09-20 23:57:12 74

原创 (跨域问题《一》)HTML5中postMessage实现ajax中的post跨域

HTML5中提供了在网页文档之间相互接收与发送信息的功能。使用这个功能,只要获取到网页所在窗口对象的实例,不仅仅同源(域+端口号)的web网页之间可以互相通信,甚至可以实现跨域通信。 1. 首先,要想接收从其他的窗口发过来的消息,就必须对窗口对象的message事件进行监听,如下代码: window.addEventListener(“message”, function(){},false);

2016-09-18 17:31:12 355

原创 未知元素宽高水平垂直居中

<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>未知宽度高度的水平垂直居中(4种)</title> <script src="http://lib.sinaapp.com/js/jquery/1.7.2/jquery.min.js" type="text/javascrip

2016-09-18 16:34:49 608

原创 git基本操作

首先要使用git的话,肯定得先下载安装它了,鉴于我第一次下载它比较费劲,故将此安装包分享。http://pan.baidu.com/s/1gfqIC4z 接下来就是git了,安装过程可参看如下两个 http://www.cnblogs.com/tugenhua0707/p/4050072.html 或者参看廖雪峰讲的 git使用简章 获取代码 git init 初始化仓库

2016-08-02 21:07:46 223

原创 css制作三角形

通常大家对css制作三角形的方法比较熟悉: <div id="circle"></div> //html代码//css代码 #circle{ width:100px; height:100px; border-radius: 50px; background:#000 ; }结果: 总结:在制做圆形之前,首先需要保证这个元素是正方形,即width==he

2016-07-31 21:49:48 1060 2

原创 jQuery对象和DOM对象

1、 通过JavaScript中 的getElementsByTagName获取元素节点得到的 DOM元素就是DOM对象。 jQuery对象就是通过jQuery包装DOM对象产生的对象。 2、jQuery对象和DOM对象的任何方法不能混用 例:获取id为foo元素内的html代码$('#foo').html()document.getEleme

2016-07-30 14:46:20 407

原创 javascript定时器及其优化

启动定时器method是调用的js方法time是时间间隔,毫秒数关闭定时器用这种方法去关闭定时器,往往不能及时关闭。setInterval会产生回调堆积,特别是时间较短的情况下解决方法如下:在JavaScript中还有另一种定时器,setTimeout(method,time),与setInterval的区别就在于这个定时器只会执行一次就终止。setInterv

2016-07-28 11:41:28 1574

原创 你不知道的CSS(边框塌陷)

在html和CSS的学习中,你可能会做很多精美的网页,但其中一些不常见的问题,或许初次遇到的你会很是棘手,下面就一些例子我做一些简单分析。     图片加上链接后,点击该图片默认会产生虚线边框:           解决方法:css样式中设置outline:none;即可。    边框塌陷问题:                    body,div

2016-04-13 23:00:17 6473 1

ndeJs开发指南

nodeJs开发指南清晰版

2016-08-01

最大值和次大值

最大值和次大值的求解问题 C语言代码非常简单 希望有用

2015-10-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除