自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 问答 (1)
  • 收藏
  • 关注

原创 React:组件的生命周期

在组件的整个生命周期中,随着该组件的props或者state发生改变,其DOM表现也会有相应的变化。一个组件就是一个状态机,对于特定地输入,它总返回一致的输出。一个React组件的生命周期分为三个部分:实例化、存在期和销毁时。实例化当组件在客户端被实例化,第一次被创建时,以下方法依次被调用:1、getDefaultProps 2、getInitialState 3、componentWillMo

2016-12-29 11:43:51 373

原创 React 开发中的几个注意点

1. this is undefined参考问题http://stackoverflow.com/questions/33973648/react-this-is-undefined-inside-a-component-function 当你用es6语法写react的时候,用以下方法绑定事件,会发现this指针undefined,此时会抛出setState is not a function

2016-12-08 02:14:51 480

原创 关于TCP/IP的三次握手和四次挥手解释

最近在准备面试,TCP/IP 的三次握手和四次挥手在面试中出现的频率挺高,然而细节的东西又有点多,所以打算记录一下,自己以后可以方便复习。 参考:http://www.cnblogs.com/rootq/articles/1377355.html1. 三次握手:位码即tcp标志位,有6种标示: SYN(synchronous建立联机) ACK(acknowledgement 确认) PSH(pu

2016-11-17 23:02:15 453

原创 javascript实现23种设计模式

1. 单例模式全局唯一实例var singleton = function( fn ){ var result; return function(){ return result || ( result = fn .apply( this, arguments ) );//fn.apply相当于直接调用函数,只是将函数内的this(上下文)改变了 }}var

2016-11-17 22:15:40 1948

转载 C++堆上申请二维数组

假设要申请的是double型大小m*n数组有如下方法方法一:优点:申请的空间是连续的 缺点:较难理解double (*d)[n] = new double[m][n]方法二:优点:容易理解 缺点:申请的空间不能连续且需要多个指针才能管理double *d[m];for (int i=0; i<m; i++) d[i] = new double[n];转自:http://www.cnblogs.c

2016-10-13 19:35:59 844

转载 c++运算符重载总结

c++的一大特性就是重载(overload),通过重载可以把功能相似的几个函数合为一个,使得程序更加简洁、高效。在c++中不止函数可以重载,运算符也可以重载。由于一般数据类型间的运算符没有重载的必要,所以运算符重载主要是面向对象之间的。1.一般运算符重载 在进行对象之间的运算时,程序会调用与运算符相对应的函数进行处理,所以运算符重载有两种方式:成员函数和友元函数。成员函数的形式比较简单,就是在类里

2016-10-13 01:46:40 381

原创 ubuntu下mongodb的基本使用

安装nodejs的mongodb包sudo npm install -g mongodb安装mongodbsudo apt-get install mongodb-server进入shell 环境mongo连接数据库mongodb://localhostmongodb://localhost创建数据库use chihuo \创建一个叫chihuo的数据库db.createCollection(

2016-09-28 08:57:50 366

原创 ES6 解构赋值用途

(1)交换变量的值[x, y] = [y, x];上面代码交换变量x和y的值,这样的写法不仅简洁,而且易读,语义非常清晰。(2)从函数返回多个值函数只能返回一个值,如果要返回多个值,只能将它们放在数组或对象里返回。有了解构赋值,取出这些值就非常方便。// 返回一个数组function example() { return [1, 2, 3];}var [a, b, c] = example(

2016-09-25 08:30:51 467

原创 static_cast, dynamic_cast探讨

static_cast用法:static_cast < type-id > ( expression ) 说明:该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。 它主要有如下几种用法: 用于类层次结构中基类和子类之间指针或引用的转换。进行上行转换(把子类的指针或引用转换成基类表示)是安全的;进行下行转换(把基类指针或引用转换成子类指针或引用)时,

2016-09-24 15:48:53 265

转载 js面向对象总结

//定义Circle类,拥有成员变量r,常量PI和计算面积的成员函数area() 1.工厂方式var Circle = function() { var obj = new Object(); obj.PI = 3.14159; obj.area = function( r ) { return this.PI * r * r; } return obj;

2016-09-23 15:46:06 226

原创 Effective C++总结

explicit 可以用来阻止隐式类型转化如果类成员变量里面存在const 或 引用数据成员,则拷贝赋值函数,即operator =,需要自己重写,不可以用默认拷贝赋值;如果有成员变量有指针,视具体情况而定。为驳回编译器默认的提供的机能,可将相应的成员函数声明为private并且不予实现。使用像Uncopyable这样的base class也是一种做法带有多态性质的base class(即有一

2016-09-20 20:28:12 293

原创 CAPM模型计算

题目:某公司股票的系数为2,无风险利率为5%,市场上所有股票的平均报酬率为10%。利用资本资产定价模型计算该公司的股票成本。 CAPM定价模型的公式 R=Rf+β(Rm-Rf) 答案:R=Rf+β(Rm-Rf)=5%+2*(10%-5%)=15% 注意:Rm表示市场上所有股票的平均报酬率。 R表示单个股票的期望报酬率(即该股票的资本成本)

2016-09-19 14:08:09 27278 1

原创 React 入门总结

1.服务器JSX转化命令JS 将 src 子目录的 js 文件进行语法转换,转码后的文件全部放在 build 子目录。babel src --out-dir build2.JSX 的基本语法规则: 遇到 HTML 标签(以 < 开头),就用 HTML 规则解析;遇到代码块(以 { 开头)3.组件 React.createClass 方法就用于生成一个组件类,组件类的第一个字母必须大写,否则会

2016-09-07 00:52:42 218

转载 python编码问题

首先要搞清楚,字符串在Python内部的表示是unicode编码. 因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码。 decode的作用是将其他编码的字符串转换成unicode编码, 如str1.decode('gb2312'),表示将gb2312编码的字符串转换成unicod

2016-04-25 21:38:51 231

转载 django获取url参数总结

1 无参数情况配置URL及其视图如下:(r'^hello/$', hello) def hello(request): return HttpResponse("Hello World")访问http://127.0.0.1:8000/hello,输出结果为“Hello World”2 传递一个参数 配置URL及其视图如下,URL中通过正则指定一个参数:(r'^plist/(.

2016-04-11 03:06:29 2716

原创 python判断语句is与==的区别

python的is比较两个对象是否相等,==判断的是两个对象的值是否相等 比如:def is_undefined1(name): if name is u'undefined': return True return Falsedef is_undefined2(name): if name == u'undefined': return T

2016-04-06 12:56:27 479

转载 切换python版本

alternatives这么好的机制用起来呀。shell里执行:sudo update-alternatives –install /usr/bin/python python /usr/bin/python2 100 sudo update-alternatives –install /usr/bin/python python /usr/bin/python3 150 此时你会发现如果要切换

2016-03-26 18:56:25 685

转载 Postgresql的基本操作

一、安装 首先,安装PostgreSQL客户端。 sudo apt-get install postgresql-client 然后,安装PostgreSQL服务器。 sudo apt-get install postgresql 正常情况下,安装完成后,PostgreSQL服务器会自动在本机的5432端口开启。 如果还想安装图形管理界面,可以运行下面命令,但是本文不涉及这方面内容。

2016-03-26 18:55:22 8341

原创 Ubuntu解决virtualenv升级错误

Traceback (most recent call last): File "/usr/lib/python3/dist-packages/pkg_resources.py", line 444, in _build_master ws.require(__requires__) File "/usr/lib/python3/dist-packages/pkg_resources.py", lin

2016-03-17 23:44:11 4372

原创 CTF比赛的一道javascript题

CTF比赛中的一道javascript题,考察了很多知识。在做题的过程也很有趣,在此发表给大家

2016-03-14 19:52:20 3330

转载 javascript typeof的用法与typeof运算符介绍

经常会在js里用到数组,比如 多个名字相同的input, 若是动态生成的, 提交时就需要判断其是否是数组. if(document.mylist.length != "undefined" ) {} 这个用法有误. 正确的是 if( typeof(document.mylist.length) != "undefined" ) {} 或 if( !isNaN(document.myli

2016-02-20 01:17:45 372

转载 js中的hasOwnProperty和isPrototypeOf方法使用实例

hasOwnProperty:是用来判断一个对象是否有你给出名称的属性或对象。不过需要注意的是,此方法无法检查该对象的原型链中是否具有该属性,该属性必须是对象本身的一个成员。isPrototypeOf:是用来判断要检查其原型链的对象是否存在于指定对象实例中,是则返回true,否则返回false。function siteAdmin(nickName,siteName){

2016-02-19 16:40:07 455

转载 Sublime Text 3 全程详细图文

一、 前言       使用Sublime Text 也有几个年头了,版本也从2升级到3了,但犹如寒天饮冰水,冷暖尽自知。最初也是不知道从何下手,满世界地查找资料,但能查阅到的资料,苦于它们的零碎、片面,不够系统和全面,所以一路走来,耗费了本人大量的时间和精力。所以蒙生了写这篇《Sublime Text 3 全程详细指南》,一来对自己的经验是一个总结,二来可以给初学者做个系统、全面的指引,

2016-02-06 21:53:47 2791

转载 jQuery插件写法总结以及面向对象方式写法总结

前言最近在折腾jQuery插件,写成插件的目的就是为了实现功能与项目相分离,使得这个代码在下一个项目中能直接引用不出错。这使得我们在写插件的时候,就得考虑清楚,怎么写才能使得插件能够通用、灵活度高、可配置、兼容性好、易用性高、耦合度低等。接下来就对以下几种写法进行分析,前两个是jQuery插件,后面2个是以对象的形式开发,都类似。而且写法也很多,我们要懂得这样写的利弊。另一篇基础文

2016-02-06 03:49:12 856

转载 编写高性能的jQuery代码

众所周知,jQuery现在已经非常流行,百度新首页中也已经开始使用jQuery,今天总结下怎么书写更好的jQuery代码使jQuery代码更好、更快的执行,希望本篇jQuery教程一改大家以前不合理的做法1.正确引用jQuery1.尽量在body结束前才引入jQuery,而不是在head中。2.借助第三方提供的CDN来引入jQuery,同时注意当使用第三

2016-02-06 01:58:05 304

转载 JS分离构造器

通过new操作符构建一个对象,一般经过四步:  A.创建一个新对象  B.将构造函数的作用域赋给新对象(所以this就指向了这个新对象)  C.执行构造函数中的代码  D.返回这个新对象最后一点就说明了,我们只要返回一个新对象即可。其实new操作符主要是把原型链跟实例的this关联起来,这才是最关键的一点,所以我们如果需要原型链就必须要new操作符来进行处理

2016-02-04 16:09:52 329

转载 JS对象的构建

面向对象(OOP)的语言都有一个特点,它们都会有类的这一概念,通过类可以抽象出创建具体相同方法与属性的对象。但是ECMAScript中是没有类的概念的,因此它的对象与基于类的语言如java的定义是有所不同的。在JavaScript世界中函数作为“一等公民”,它不仅拥有一切传统函数的使用方式(声明和调用),而且可以做到像简单值一样赋值、传参、返回,这样的函数也称之为第一级函数。不仅如此,而且

2016-02-04 15:52:44 340

转载 jQuery对象与DOM对象的互相转化

JQuery转化为DOM对象,获取第N个JQuery对象,DOM对象转化为JQuery对象

2016-02-01 15:02:24 502

空空如也

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

TA关注的人

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