- 浏览: 120829 次
- 性别:
- 来自: 宁波
-
文章列表
在很多语言中,函数(Java里面成为方法)和对象时截然不同的两种东西。函数被定义为对象的动作,或者是全局的(像在C++中的main函数一样)。但是在JavaScript中,函数和对象的界限却显得不那么明显。
1. 函数的定义
JavaScript中有很多种定义函数的方法:
function hello() { alert("Hello!"); }
var hello1 = function() { alert("Hello!");
Javascript中的对象、函数和继承
<!--[if !supportLists]-->1、 <!--[endif]-->Javascript中的对象
JavaScript可以说是一个基于对象的编程语言,为什么说是基于对象而不是面向对象,因为JavaScript自身只实现了封装,而没有实现继承和多态。既然他是基于对象的,那么我们就来说说js中的对象。有人说js中所有的都是对象,这句话不完全正确。正确的一方是他强调了对象在js中的重要性,对象在js中无处不在,包括可以构造对象的函数本身也是对象。但是另一方面,js中也有一些简单的数据类型,包括数字、 ...
JavaScript学习总结:
1:声明式函数
//在加载页面时,只解析一次.随后无论参数的变化如何,调用次数多少:使用的都是同一个函数对象
语法:
function functionName(param1,...paramN){
function statements;
}
2:匿名函数
//每次请求调用时,都解析(动态重构)
语法:
var variable = new Function("param1",..."paramN","function statements");
...
函数对象和其他内部对象的关系 除了函数对象,还有很多内部对象,比如:Object、Array、Date、RegExp、Math、Error。这些名称实际上表示一个类型,可以通过new操作符返回一个对象。然而函数对象和其他对象不同,当用typeof得到一个函数对象的类型时,它仍然会返回字符串“function”,而typeof一个数组对象或其他的对象时,它会返回字符串“object”。下面的代码示例了typeof不同类型的情况: 以下是引用片段: alert(typeof(Function)));
alert(typeof(new Function()));
a ...
这里是维基百科对网络爬虫的词条页面。网络爬虫以叫网络蜘蛛,网络机器人,这是一个程序,其会自动的通过网络抓取互联网上的网页,这种技术一般可能用来检查你的站点上所有的链接是否是都是有效的。当然,更为高级的技术是把网页中的相关数据保存下来,可以成为搜索引擎。
从技相来说,实现抓取网页可能并不是一件很困难的事情,困难的事情是对网页的分析和整理,那是一件需要有轻量智能,需要大量数学计算的程序才能做的事情。下面一个简单的流程:
在这里,我们只是说一下如何写一个网页抓取程序。
首先我们先看一下,如何使用命令行的方式来找开网页。
telnet somesite.com 8
下面是JDK中有关23个经典设计模式的示例,在stakeoverflow也有相应的讨论:http://stackoverflow.com/questions/1673841/examples-of-gof-design-patterns
Structural(结构模式)
Adapter:把一个接口或是类变成另外一种。
java.util.Arrays#asList()
javax.swing.JTable(TableModel)
java.io.InputStreamReader(InputStream)
java.io.OutputStreamWriter(Outpu ...
JavaScript,调用函数的5种方法 一次又一次的,我发现,那些有bug的Javascript代码是由于没有真正理解Javascript函数是如何工作而导致的(顺便说一下,许多那样的代码是我写的).JavaScript拥有函数式编程的特性, 当我们选择面对它的时候,这将成为我们前进的阻碍. 作为初学者,我们来测试五种函数调用的方法,从表面来看我们会认为那些函数与C#中函数的作用非常相似,但是我们一会儿可以看到还是有非常重要的不同的地方的,忽视这些差异无疑会导致难于跟踪的bug。. 首先让我们创建一个简单的函数,这个函数将在将在下文中使用,这个函数仅仅返回当前的this的值和两个提供的参数. ...
1.对局部变量(local variables),字段(fields),参数(method arguments)这三种变量的命名没有区分,造成了代码的阅读困难,增加了代码的维护成本。
作者举了个例子:
Java代码
public boolean equals (Object arg) {
IOC(inview of control)控制反转
在我们的程序中,要实现某个功能,我们都会用到两个或两个以上的类来协同完成,那么在一个类中,我们就会要有它的合作类的引用,也就是说这个类依赖于别的类,这个合作类的获取,将会有一下几种不同的情况
依赖获取的三种方式:
Java代码
在javascript脚本里面有一个 iframe 控件, 可以将另外一个网页B的内容插入该页面A。那么可不可以在已经打开这个页面A的时候重新将 网页B的内容插入呢?当然可以,只要用javascript 得到 该 iframe控件的ID, 并将该控件的src属性赋值为你想要从哪里获取数据的页面.这样,iframe控件就重新加载内容,此时,主页面并没有刷新,但是该控件的内容就已经更改了.代码如下:<table width="100%" height="60" border="0" cellspacing="0&quo ...
为程序员推荐的外国书籍 收藏
一、 科学哲学和管理哲学【1】 "程序开发心理学"(The Psychology of Computer Programming : Silver Anniversary Edition)nbsp;【2】 "系统 化思维导论"(An Introduction to Systems Thinking, Silver Anniversary Edition)【3】 "系统设计的一般原理"( General Principles of Systems Design)【4】 "质量? ...
“好的软件人员一生必看的六十本书” 收藏
漫长的三年过去了,我们摸爬滚打,没有指路的明灯。我也在摸索中走了不少的弯路,向我的软件班的同学引荐别人推荐几本好书(我也是在查漏补缺),希望有志者能少走 ...
[1]全局Map造成的内存泄漏:
无意识对象保留最常见的原因是使用 Map 将元数据与临时对象(transient object)相关联。假定一个对象具有中等生命周期,比分配它的那个方法调用的生命周期长,但是比应用程序的生命周期短,如客户机的套接字连接。需要将一些元数据与这个套接字关联,如生成连接的用户的标识。在创建 Socket 时是不知道这些信息的,并且不能将数据添加到 Socket 对象上,因为不能控制 Socket 类或者它的子类。这时,典型的方法就是在一个全局 Map 中存储这些信息:
public class SocketManager{
private Map ...
2)软可及对象(softly reachable):
不通过强引用访问的对象,即不是强可及对象,但是可以通过软引用访问的对象就成为软可及对象,软可及对象就需要使用类SoftReference(java.lang.ref.SoftReference)。此种类型的引用主要用于内存比较敏感的高速缓存,而且此种引用还是具有较强的引用功能,当内存不够的时候GC会回收这类内存,因此如果内存充足的时候,这种引用通常不会被回收的。不仅仅如此,这种引用对象在JVM里面保证在抛出OutOfMemory异常之前,设置成为null。通俗地讲,这种类型的引用保证在JVM内存不足的时候全部被清除,但是有个关键在 ...
iv.共享内存:
在Java语言里面,没有共享内存的概念,但是在某些引用中,共享内存却很受用,例如Java语言的分布式系统,存着大量的Java分布式共享对象,很多时候需要查询这些对象的状态,以查看系统是否运行正常或者了解这些对象目前的一些统计数据和状态。如果使用的是网络通信的方式,显然会增加应用的额外开销,也增加了不必要的应用编程,如果是共享内存方式,则可以直接通过共享内存查看到所需要的对象的数据和统计数据,从而减少一些不必要的麻烦。
1)共享内存特点:
可以被多个进程打开访问
读写操作的进程在执行读写操作的时候其他进程不能进行写操作
多个进程可以交替对某一 ...