- 博客(209)
- 资源 (35)
- 收藏
- 关注

原创 Javascript作用域链的总结
作用域链相关的文章我看过不少,但一直没能形成一个总结,今天把我看到的一些东西,结合自己的想法,总结成8个点,算是对自己的交代。 JavaScript函数的作用域链分为定义时作用域链和运行时作用域链;函数被定义的时候,它有一个属性[[scope]]标明它的定义作用域链,定义时作用域链[[scope]]遵守这样的规则:一个函数的定义时作用域链[[scope]]总是它所在的外部函数的执行
2013-06-09 22:30:04
3361

原创 Javascript全局变量var与不var的区别
相信你对全局变量一定不陌生,在函数作用域里用a=1这种形式定义的变量会是一个全局变量,在全局作用域里,用下面3种形式都可以创建对全局可见的命名:var a = 1;b = 2;window.c = 3;对于b=2这种方式, 它其实和c是一样的,在执行这个赋值语句的时候,会沿着作用域链寻找名字叫做b的变量,一直找到作用域链的顶端还没有找到,于是给window添加一个属性b然后赋值。
2013-06-09 20:11:27
5790

翻译 Javascript作用域和变量提升
[转载请注明来自: http://blog.youkuaiyun.com/sunxing007]下面的程序是什么结果?var foo = 1;function bar() { if (!foo) { var foo = 10; } alert(foo);}bar();结果是10;那么下面这个呢?var a = 1;function b() { a = 10;
2013-06-05 22:43:30
18393
1

转载 树形结构的数据库表Schema设计
树形结构的数据库表Schema设计 程序设计过程中,我们常常用树形结构来表征某些数据的关联关系,如企业上下级部门、栏目结构、商品分类等等,通常而言,这些树状结构需要借助于数据库完成持久化。然而目前的各种基于关系的数据库,都是以二维表的形式记录存储数据信息,因此是不能直接将Tree存入DBMS,设计合适的Schema及其对应的CRUD算法是实现关系型数据库中存储树形结构的关键。
2013-01-24 16:25:35
1918
原创 重现Struts1的操纵classLoader漏洞
注:本文仅限技术研究,探讨,测试使用2014年4月29日爆出的struts的可操纵classLoader的漏洞, 横跨struts1和struts2的所有版本。 影响面和问题的严重性几乎可以和heartbleed相媲美。 struts2要严重一些,对于struts1,只是说在特定条件下可执行特殊操作。因为项目中用的是struts1,所以主要精力集中在struts1上。既然要修复漏洞
2014-05-15 13:44:22
7766
原创 重现apache commons fileupload DOS漏洞
这个漏洞是2014年2月4日被发现的, 因为该组件试用范围非常广, 所以该漏洞的影响也非常巨大。通过特制的包含畸形header的http请求,可以导致使用该组件的应用程序进入无线循环从而耗尽CPU等资源并最终崩溃。最近因为在修补struts1的可操纵classLoader的漏洞(struts2也有该漏洞, 不在本文讨论范围), 所以我就在我建立的struts1的项目上直接做测试。 怎么创建
2014-05-15 12:15:48
4453
原创 推荐一个好组件Javascript文本比较工具
最近项目上需要一个类似cvs/svn文本比较工具, 把左右两个文本中不一样的部分标出来. 最后找到了这个:mergely: http://www.mergely.com/需要的自己去下载, 例子比较全面, UI做的极好, 我们拿给用户看的时候他非说是flash或者silverlight/.NET做的.有个缺点是IE系列需要IE9以及以上.
2013-08-09 17:41:42
8317
3
原创 Java谜题畅读版之更多的库谜题
谜题78:反射的污染这个谜题举例说明了一个关于反射的简单应用。这个程序会打印出什么呢? import java.util.*;import java.lang.reflect.*;public class Reflector { public static void main(String[] args) throws Exception { Set s = n
2013-06-18 20:38:20
1561
原创 理解Java线程的中断
中断的引入是为了解决一个线程被请求中途结束的问题. 一个线程在未正常结束之前, 被强制终止是很危险的事情. 因为它可能带来完全预料不到的严重后果. 所以你看到Thread.suspend, Thread.stop等方法都被Deprecated了.那么不能直接把一个线程搞挂掉, 但有时候又有必要让一个线程死掉, 或者让它结束某种等待的状态 该怎么办呢? 优雅的方法就是, 给那个线程一个中断信号,
2013-06-18 19:54:24
19861
原创 Java谜题畅读版之更多的类谜题
谜题66:一件私事在下面的程序中,子类的一个域具有与超类的一个域相同的名字。那么,这个程序会打印出什么呢? class Base { public String className = "Base";}class Derived extends Base { private String className = "Derived";}public class Pri
2013-06-17 21:17:12
1580
原创 Java谜题畅读版之库谜题
谜题56:大问题我们来测试一下你对BigInteger的了解程度。下面这个程序将打印出什么呢? import java.math.BigInteger;public class BigProblem { public static void main(String[ ] args) { BigInteger fiveThousand = new BigInteg
2013-06-17 11:55:15
1293
原创 Java谜题畅读版之类谜题
谜题46:令人混淆的构造器案例下面的程序打印出什么呢?甚至它是否是合法的呢?public class Confusing { private Confusing(Object o) { System.out.println("Object"); } private Confusing(double[] dArray) { System
2013-06-16 19:11:01
1585
原创 关于Java序列化的一些高级用法
该说的都在注释中说完了。直接给程序吧。package test.javaPuzzler.p5;import java.io.*;import java.io.ObjectInputStream.GetField;import java.io.ObjectOutputStream.PutField;// 转载请注明来自http://blog.youkuaiyun.com/sunxing007
2013-06-15 22:40:59
2587
原创 Java谜题畅读版之异常谜题
谜题36:优柔寡断下面的程序打印的是什么呢?甚至,它是合法的吗?public class Indecisive { public static void main(String[] args) { System.out.println(decision()); } static boolean decision() { try {
2013-06-13 22:12:06
1290
原创 Java谜题畅读版之循环谜题
谜题24:尽情享受每一个字节public class BigDelight { public static void main(String[] args) { for (byte b = Byte.MIN_VALUE; b < Byte.MAX_VALUE; b++) { if (b == 0x90) Sys
2013-06-13 17:44:12
1334
原创 Java谜题畅读版之字符谜题
谜题11:最后的笑声public class LastLaugh{ public static void main(String[] args){ System.out.print("H"+"a"); System.out.print('H'+'a'); }}你期待程序打出HaHa, 但是不是。问题的关键在于:char的本质是16位无符号整
2013-06-12 22:38:46
1237
原创 Java谜题畅读版之表达式谜题
谜题1:奇数性下面判断一个数是否是奇数,这个程序对吗?public static boolean isOdd(int i){ return i % 2 == 1;}这里需要注意的是负奇数,负奇数i%2 = -1;正确的程序可以如下:public static boolean isOdd(int i){ return i % 2 != 0;}或者有性能更好的写法:
2013-06-12 21:55:43
1263
原创 笔记本电池如何影响setInterval
有兴趣的可以把下面的代码拷贝出去运行一下,可以发现,setInterval的运行频率大约是250/秒。如果你正在使用笔记本,请使用IE浏览器,并尝试拔掉电源线看看程序运行有没有变化。你会发现拔掉电源之后,频率降到60.怎么会这样?原来微软想帮我们节约点电。
2013-06-10 22:14:30
1303
原创 Java常用排序算法及性能测试集合
周末天气不好,在家无事,把常用排序算法理了一遍,收获不小,特写文章纪念。这些算法在学校的时候学过一遍,很多原理都忘记了。现在再回过头理解,结合自己的体会, 选用最佳的方式描述这些算法,以方便理解它们的工作原理和程序设计技巧。本文适合做java面试准备的材料阅读。先附上一个测试报告:Array length: 20000bubbleSort : 766 msbubbleSortAdv
2013-06-02 12:27:40
5676
原创 Activiti逐级审批
动手实现了一下activiti下实现中国特色的逐级审批。准备工作是写一个人力资源服务类并将它注入到applicationContext;这个服务类就是模拟上下级关系:kermit -> gonzo -> fozzie ->john. 这个类在流程中的作用就是查找用户的直接上级;public class HumanService { public String getDirect
2013-01-10 21:48:11
17192
原创 解惑spring嵌套事务
原文地址: http://www.iteye.com/topic/35907在所有使用 spring 的应用中, 声明式事务管理可能是使用率最高的功能了, 但是, 从我观察到的情况看, 绝大多数人并不能深刻理解事务声明中不同事务传播属性配置的的含义, 让我们来看一下 TransactionDefinition 接口中的定义Java代码 /** * Sup
2012-07-13 13:26:25
1733
原创 测试DOCTYPE在各种浏览器上的Quirks模式和标准模式
首先声明, 讨论这个问题本文不具备太大的现实意义, 就好比花大笔墨讨论用java1.1重写我们目前的项目会有哪些影响一样. 但是做web开发, 难免要接触它. 我各人觉得quirks模式翻译为怪异模式不是很好, 至少我花了好久才揣摩出它的真正含义. 简单来说, quirks模式就是兼容模式, 就是让相对较新的浏览器兼容旧浏览器, 让较新的浏览器表现的像旧的浏览器一样, 包括再现旧浏览器中已知的bu
2012-04-06 18:00:59
3545
原创 linux文本处理工具之awk
基础概念Awk把文件(或其他方式的输入流, 如重定向输入)看作一个记录集, 把每一行看作一条记录, 把每一行中以空格(或\t,或用户自己指定的分隔符)分割的字符串看作一个字段. 这似乎把文件记录看成数据库. 但是, awk仍然以行为单位逐行处理. 本例子以下面的文件(命名为s.txt)内容做演示:zhangsan 1977 male computer 83lisi 1989 male
2012-02-29 16:05:16
1333
原创 linux文本处理工具之sed
sed '2,5d' file 显示文件file,除去2-5行,但行数超过文件实际行数时不会报错。sed '/10[1-4]/d' file 显示文件file,除去包含101-104的行。sed '2,$d' file 显示文件,只显示第一行。sed '2,$!d' file则只显示除第一行外的其它行。sed '/^ *$/d file 删除文件中的空行。sed -n
2012-02-29 16:04:27
1198
原创 linux文本处理工具之grep
常用的grep选项-c 只输出匹配行的计数。-i 不区分大小写(只适用于单字符)。-h 查询多文件时不显示文件名。-l 查询多文件时只输出包含匹配字符的文件名。-n 显示匹配行及行号。-s 不显示不存在或无匹配文本的错误信息。-v 显示不包含匹配文本的所有行。例子grep -v "Sort" tab2 显示不包含匹配文本的所有行grep -n "So
2012-02-29 16:04:00
909
原创 用字符实现上下箭头
今天看了http://www.zhangxinxu.com/wordpress/2011/08/%e5%b0%8f%e5%8d%96%e5%bc%84%ef%bc%9a%e5%ad%97%e7%ac%a6%e4%b8%8a%e4%b8%8b%e5%8d%8a%e6%88%aa%e
2011-08-19 18:36:45
3694
翻译 inline-block是什么意思
display: inline-block; 这个东西困扰了我好久。不知道反正我在中文网站上没有找到让我一下子醒悟过来的解释。偶然间读到这篇英文,我觉得简短的几句话,把问题解释的很清楚。 就像我开始的时候不明白clear:both,但是有人告诉我说是“清除浮动造成的影响”一样,
2011-07-09 15:09:47
7803
转载 关于DOM事件的Bubbling和Capturing
于DOM事件的Bubbling和Capturing在浏览器解析事件的时候,有两种触发方式,一种叫做Bubbling(冒泡),另外一种叫做Capturing(捕获)。由上图可以看出来,冒泡的方式效果就是当一个DOM元素的某事件例如click事件被fire时,依次它的父元素的clic
2011-05-23 09:10:00
2755
原创 htm, html, xhtml, dhtml
<br />以前没大注意过, 今天总结一下.<br />htm: 很多文件以htm的格式结尾, 这是有历史的: htm与html没有实质上的区别,只是为了满足DOS的8+3(文件名不能超过8个字符,扩展名不能超过3个字符)文件命名.<br />html: 就不说了.<br />xhtml: XHTML是The Extensible HyperText Markup Language可扩展标识语言的缩写. 目前推荐遵循的是W3C于2000年1月26日推荐XML1.0标准. 说白了, 试图以XML的严谨来要求H
2011-05-20 18:00:00
1193
转载 DOCTYPE用法详解
<br />DOCTYPE用法详解<br />一、浏览器呈现模式和doctype<br />有的网页是遵循标准而创作的,但也有很多不是。即使你不能创建遵循标准的网页,也希望浏览器根据标准来正确显示那些页。目前,大量网页充斥着大量非标准代码,它们仍能正常地工作。事实上,为旧版浏览器设计的大多数代码都能在新版浏览器中正确显示(虽然呈现方式可能有所区别)。这是什么原因呢?事实上,假如严格遵循最新标准,会完全破坏那些页的生存基础。对于任何希望有所作为的浏览器来说,这当然是令人无法接受的。 不同网页的不同呈现模式 <
2011-05-20 14:00:00
1451
转载 70 Must-Have CSS3 and HTML5 Tutorials and Resources
70 Must-Have CSS3 and HTML5 Tutorials and Resources<br />10Aug<br />Posted by Ray Cheung as Information<br />CSS3 and HTML 5 are capable of revolutionizing the way we design websites. Both include so many new features and functions that it can be hard
2011-05-20 09:50:00
1612
原创 [笔记]Javascript中的11个难以理解的问题
看了这个人的javascript系列, 很受教育, 做了一些笔记.http://www.cnblogs.com/fool/tag/%E7%90%86%E8%A7%A3Javascript/原始值与引用值原始值存放在栈里, 引用值存放在堆里. 如程序:function Person(id,name,age){ this.id = id; this.name = name; this.age = age;}var num = 10;var bol = true;var str
2011-05-19 16:27:00
1718
原创 JS继承中的本地属性与继承属性
<br />本地属性与继承属性<br />对象通过隐式Prototype链能够实现属性和方法的继承,但prototype也是一个普通对象,就是说它是一个普通的实例化的对象,而不是纯粹抽象的数据结构描述。所以就有了这个本地属性与继承属性的问题。<br />首先看一下设置对象属性时的处理过程。JS定义了一组attribute,用来描述对象的属性property,以表明属性property是否可以在JavaScript代码中设值、被for in枚举等。<br />obj.propName=value的赋值
2011-05-18 17:34:00
4060
转载 详解new function(){}和function(){}()
详解new function(){}和function(){}() <br />2008-2-20 下午 - JS/Ajax/AS/Flex - function - javascript <br />情景一:var yx01 =newfunction(){return"圆心"};<br />alert(yx01);<br /><br />我们运行情景一代码,将返回显示“[object object] ”,此时该代码等价于:function匿名类(
2011-05-18 17:25:00
1749
原创 理解数据库事务隔离级别以及脏读, 不可重复读, 幻读
数据库事务的4个特性:原子性(atomic): 都成功或者都失败;一致性(consistency):事务操作之后,数据库所处的状态和业务规则是一致的;比如a,b账户相互转账之后,总金额不变;隔离性(isolation):操作中的事务不相互影响;持久性(durability):事务提交后被持久化到数据库.脏读,不可重复读, 幻读幻读phantom read:事务1读取记录时事
2011-05-17 16:29:00
17581
转载 推荐19个很有用的 JavaScript 库
<br />推荐19个很有用的 JavaScript 库<br /> 流行的 JavaScript 库有jQuery,MooTools,Prototype,Dojo和YUI等,这些 JavaScript 库功能丰富,加上它们众多的插件,几乎能实现任何你需要的功能,然而需要实现一些特定的功能,则可以选择功能更专一的轻量库,今天这篇文章与大家分享16个很有用的 JavaScript 库。<br /><br />Blackbird: Open Source JavaScript Logging Utility<
2011-05-15 14:07:00
1458
Tensorflow t5预训练语法更正模型
2021-06-21
自己写的extjs布局
2010-07-10
dhATV4树形菜单jsp版
2010-01-27
for me only do not download please.
2010-01-27
for me only, please don't download.
2010-01-26
wz_jsgraphics.js
2010-01-09
for me only please do not download(survey)
2010-01-03
for me only 1
2009-10-19
实战springmodules commons validator
2009-10-12
for me only 3
2009-10-07
ExtJS + JSP动态显示文件上传进度
2009-10-07
纯js实现的分栏效果
2009-08-28
for me only 4
2009-08-19
Delphi 报表Rave参考手册ppt版
2008-06-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人