自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 .NET中的Task

1. 创建Task:Console.WriteLine("Before task1, with thread id: {0}", Environment.CurrentManagedThreadId);Console.WriteLine("=== Time before tasks begin ===");Console.WriteLine(DateTime.Now.ToLongTime

2014-01-15 19:18:46 1030

原创 创建线程的空间开销

创建线程是一件非常消耗资源的事情。下面的C#代码可以得到创建一个线程的空间开销:private static void DumyTask(){ Thread.CurrentThread.Suspend();}private static long GetMemoryUsageInKB(){ int oneKB = 1024; long memorySize

2014-01-15 12:39:46 3266

原创 C#基于DataContract序列化成XML格式

1. 序列化代码:static string SerializeData(T data){ var serializer = new DataContractSerializer(typeof(T)); using (var stringWriter = new System.IO.StringWriter()) using (var writer = new Sy

2014-01-03 17:23:34 1590

原创 不一样的Javascript(14)——继承

1. Just draft. Will be revised soon. Please wait :)function Person(name, age) { this.name = name; this.age = age;}Person.prototype.toString = function() { return "name is " + this.nam

2013-12-26 17:51:52 809 1

原创 不一样的Javascript(13)——模块化与命名空间

1. Just Draft. Will be finalized soon. Please wait // Module A in ModuleA.jsvar name = "Harry";function printName() { console.log("I'm in ModuleA, " + name);}// Module B in ModuleB.jsvar

2013-12-24 22:54:06 1467

原创 动手学Javascript(3)——HTML5模拟下雪

马上就是圣诞节,基于HTML5的Canvas写个网页动画,祝大家圣诞节快乐。该动画用简单的模型模拟下雪的场景,雪花被简化成一个白色的圆形,并按照正弦曲线缓慢降落。

2013-12-23 14:11:02 4183

原创 不一样的Javascript(12)——prototype

1. 可以通过往基本类型的protytype里添加新的函数。这样该类型的每个实例对象都可以调用新添加的函数。例如:String.prototype.countWords = function() { var separators = /\s+|\?|\./; var words = this.split(separators); var wordsCount

2013-12-20 17:46:42 746

原创 不一样的Javascript(11)——函数与对象

1. 每个函数都是对象,因此函数上可以定义自己的属性。例如:test.counter = 0;function test() { console.log(test.counter); test.counter++;}test(); // 0test(); // 1test(); // 2

2013-12-17 17:50:32 814

原创 不一样的Javascript(10)——函数嵌套

1. 在Javascript中,函数中可以嵌套其他函数。例如:function distance(x1, y1, x2, y2) { function square (x) { return x * x; } return Math.sqrt(square(x1 - x2) + square(y1 - y2));}var result =

2013-12-17 17:17:34 12078

原创 动手学Javascript(2)——超过30岁还能做程序员吗?

本文用Javascript写一个小程序得到stackoverflow上的用户数据,来回答一个很经典的问题:超过30岁还能做程序员吗?

2013-12-13 18:25:58 3748

原创 动手学Javascript(1)——PopStar

本文分享了用Javascript模拟实现游戏PopStar。

2013-12-12 12:14:21 1856

原创 不一样的Javascript(9)——基本类型

1. 在Javascript中,不再区分整数和浮点数。所有数值都用64位浮点数表示,可表示的范围大到±1.7976931348623157×10^308,小到±5 × 10^−324。在Javascript中通常的计算不需要对大数做特殊处理。2. 在Javascript中,对溢出、除0等都能正常执行并且有定义好的返回值,而不会抛出错误(异常)。2.1 如果计算结果超出了最大的可表示的数值,

2013-12-10 11:09:42 925

原创 不一样的Javascript(8)——基本语法

1. 在Javascript中,变量名可以是非英文字符:var 数组 = [1, 2, 3, 4, 5];var π = 3.14;数组.push(π);console.log(数组); // [1, 2, 3, 4, 5, 3.14]

2013-12-09 16:26:04 846

原创 不一样的JavaScript(7)——数组

1. 在Javascript中,我们可以用new Array()来创建一个数组,然后用下表读写数组中的元素。例如:var array1 = new Array();array1[0] = "a";array1[1] = 1;array1[2] = true;for(var i = 0; i < array1.length; ++i) { console.log(array1[

2013-12-06 17:31:21 1184

原创 不一样的JavaScript(6)——函数调用

1. 和C++/C#/Java类似,函数在被调用的时候用this指向函数的上下文对象。2. 当函数没有与某个上下文对象绑定的时候,this指向全局的window对象。例如:window.number = 10;function printNumber() { console.log(this.number);}printNumber();在上述代码中,由于this

2013-12-06 10:43:20 922

原创 不一样的JavaScript(5)——变量作用域

1. Javascript中没有块作用域,及if,for等定义的代码块不能限制变量的作用域。例如:if(true) { var number = 10;}console.log(number);for(var i = 0; i < 5; ++i) { // do something}console.log(i);变量number尽管是定义在if {...}中,但

2013-12-05 17:42:45 845

原创 Cmdlet学习笔记(3)—多次执行命令之间保存状态

在前面博客中的Cmdlet中添加两个变量:[Cmdlet(VerbsCommon.Get, "AddTwo")]public class GetProduct : PSCmdlet{ private static int numOfExecution1 = 0; private int numOfExecution2 = 0; private int num1 =

2013-10-17 16:24:21 992

原创 Cmdlet学习笔记(2)——添加参数

定义如下Cmdlet:[Cmdlet(VerbsCommon.Get, "AddTwo")]public class GetSum : PSCmdlet{ private int num1 = 0; private int num2 = 0; [Parameter(Mandatory = true, Position = 1, ValueFromPipelineB

2013-10-17 16:01:27 1586

原创 Cmdlet学习笔记(1)——Hello Cmdlet

一、编写代码1. 在Visual Studio中新建一个Class Library类型的Project,命名为Cmdlet1;2.添加引用:System.Management.Automation和System.Configuration.Install;注System.Management.Automation位于目录"C:\Program Files\Reference Assem

2013-10-14 17:22:30 1022

原创 不一样的JavaScript(4)——函数参数

1. 在Javascript中,如果函数申明时的参数个数和函数调用时的参数个数不相等,并不会引起语法错误。1.1 如果函数声明时的参数个数多于函数调用时的参数个数,在调用时没有设置的参数会被自动设为undefined。function divide(num1, num2) { if (num2 == undefined) { num2 = 2; }

2013-09-10 17:01:38 3689

原创 不一样的JavaScript(3)——比较

1. Javascript除了有==和!=两个运算符比较两个值或对象是否相等,还提供了===和!==两个运算符。

2013-09-09 15:17:23 752

原创 不一样的JavaScript(2)——属性

1. 和很多语言一样,在Javascript中可以在对象的后面用“.”运算符来读写属性。2. Javascript还支持用[] 来读写属性。var person = {};person["name"] = "harry";person["age"] = 32;for (var property in person) { console.log(property, ": ",

2013-09-06 10:10:27 924

原创 不一样的JavaScript(1)——循环

1. 和很多语言中的循环一样,JavaScript支持for, while, do...while循环,并且在循环体内支持continue和break;2. JavaScript的continue和break除了能终止当前最里面一层循环外,还支持跳转到特定的标签(通常跳转到外层循环)。比如下面的例子:2.1 break后不跟标签:for (var i = 0; i < 4; ++i)

2013-09-05 11:14:08 989

原创 不一样的C#(2)——delegate、event、lambda以及LINQ

1. Delegatehttp://msdn.microsoft.com/en-us/library/vstudio/ms173171.aspx2. Eventhttp://msdn.microsoft.com/en-us/library/awbftdfh.aspx3. Lambdahttp://msdn.microsoft.com/en-us/library/bb397687

2013-06-20 22:57:01 866

原创 不一样的C#(1)——class

1. Partial Classeshttp://msdn.microsoft.com/en-us/library/wa80x488(v=VS.80).aspx2. Static Constructorshttp://msdn.microsoft.com/en-us/library/k9x6w0hc.aspx3. out and ref Method Parametershtt

2013-06-20 21:52:43 876

原创 不一样的Python(10)——objects

1. 每个Python的object都有如下属性:(1)一个唯一的id(由函数id()获得)(2)一个type(由函数type())获得)(3)一些内容我们不能修改object的id和type。有些object的内容可以修改,有些不行。http://effbot.org/zone/python-objects.htm有更多的讨论。2. 注意下面的代码,ID是object的内

2012-11-12 14:50:50 645

原创 不一样的Python(9)——模块

1、当一个module被载入的时候,global域的代码会被执行。

2012-09-06 15:56:23 355

原创 不一样的Python(8)——类型

1. 以关键字class开始定义一个新的类型:class Employee: def setname(self, who): self.name = who def display(self): print self.name self相当于C++中的this指针。C++的this指针是隐含的,但Python中self是需要显示地写出。2. Python 把对象(o

2012-01-30 08:06:52 651

原创 不一样的Python(7)——函数

1. 参数是以传引用的方式;def fun1(l): for i in range(len(l)): l[i] *= 2def fun2(l): l = l + l如果以一个类型为list的L为参数调用fun1,返回时L的内容会发生改变;但同样以一个类型为list的L为参数调用fun2,返回时L的内容不会发生改变。2. 函数体内的对某变量的第一次赋值,都会创建一个新的局

2012-01-19 14:58:27 753

原创 不一样的Python(6)——循环

1. for/while的循环语句中,可以带上else,里面的语句在当循环不是因为break而结束时执行。 length = len(numbers) i = 0 while i < length: if numbers[i] == n: found = True break i += 1

2012-01-18 16:06:33 690

原创 不一样的Python(5)——if语句

1.elif表示else if的缩写2. Python中没有swich/case语句。可以用字典(dictionary)实现在多个条件中选择。3. 所有的非零数字和非空实例都是True;4. 零、空的实例以及None都是False;5. and, or返回的不是Ture或者False,而是一个实例对象;比如下列代码中a的结果是2,而不是Truea = (2 and 3)pri

2012-01-17 17:07:56 2019

原创 不一样的Python(4)——字符串

1.字符串str是不可修改类型; class PassByReference: def __init__(self): self.variable = 'Original' self.Change(self.variable) print self.variable def Change(self, var): var = 'Cha

2012-01-09 14:15:44 1080

原创 不一样的Python(3)——数字

1. 支持大数2. 没有自增(++)、自减(--)运算符3. **表示乘方4. 一定范围内的整数,它们只有唯一的一份拷贝:>>> a = 257>>> b = 257>>> id(a)35351736>>> id(b)35351712>>> a = 256>>> b = 256>>> id(a)30341244>>> id(b)30341244

2012-01-09 14:12:43 798

原创 不一样的Python(2)——代码风格

1. 在if/for/while/定义函数def等语句后面需加上冒号(:);2.在if/for/while语句中不需要括号;3.语句后面不许要分号(;);4.if/for/while语句和函数体不许要大括号({}),用缩进表示;

2012-01-09 11:01:11 760

原创 不一样的Python(1)——Data Container

1. 从命名上,Python的List是一个链表,而它实际上是一个数组(Array)。更确切地说,它是一个动态数组,类似于C++的std::vector。2. Slicea[start:end] # items start through end-1a[start:] # items start through the rest of the arraya[:end]

2012-01-04 15:22:15 2446

用HTML5模拟下雪

用Html5模拟下雪。雪花用圆点表示,并按照正弦曲线下降。模型虽然简单,但效果满足卡通动画的效果。

2013-12-23

JavaScript版PopStar

用Javascript实现游戏PopStar

2013-12-12

空空如也

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

TA关注的人

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