<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type='text/javascript'>
var $ = function( selector, context ) {
return new $.prototype.init( selector, context);
};
$.prototype.init = function(name, age) {
this.name = name;
this.age = age;
};
$.prototype.init.prototype = $.prototype;
var person = $('zhangsan', 18);
var persons = $('lisi', 19);
alert(person.name);
alert(persons.name);
/*$.dom = function(name, age) {
    var result = new $();
    result.name = name;
    result.age = age;
    return result;
};
$.prototype.sayName = function() {
alert(this.name);
return this;
};
var person = $('zhangsan', 18);
var persons = $('lisi', 19);
person.sayName();
persons.sayName();*/
</script>
</head><body>
</body>
</html>
当alert完两句执行完,两个实例还存在吗,什么时候被回收?

解决方案 »

  1.   

    哦,可以用引用计数理解吧,消除对象可以令其为null
      

  2.   

    还存在 且不会回收因为 他们的作用域在window下面
      

  3.   

    令其为null,就不存在了啊,与作用域无关啊
      

  4.   

    你看下lz的问题是怎么问的当对象出了作用域且没有被其位置访问(说的不太完全 ie6下页游问题) 则该对象会被自动释放 作用域就是这个意思
    至于你说的 set null 只是一个主动释放行为