| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 853 人关注过本帖
标题:我刚开始学习JAVASCRIPT对下面的问题不是很理解,请帮忙解释下:
只看楼主 加入收藏
rzglei
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-9-13
收藏
 问题点数:0 回复次数:2 
我刚开始学习JAVASCRIPT对下面的问题不是很理解,请帮忙解释下:
我刚开始学习JAVASCRIPT对下面的问题不是很理解,请帮忙解释下:

var theDate= new Date();
与 theDate= new Date();
他们之间的有什么区别啊。

delete 可以把 theDate= new Date(); 删了
对var theDate= new Date();不起作用;
搜索更多相关主题的帖子: JAVASCRIPT 解释 学习 
2008-11-24 20:23
frankqnj
Rank: 4
等 级:贵宾
威 望:12
帖 子:320
专家分:278
注 册:2008-4-6
收藏
得分:0 
你不要问 theDate=new Date() 是怎么回事了

曾经很多人 用这种方式 在 函数内 声明全局变量...

请务必在使用变量前先声明...

如果你需要用到全局变量 请 使用 window.theDate=new Date();

至于为什么 你的 thedDate 可以用delete 删除 而var 不行
这是因为 你的var theDate 是window对象的私有属性...  私有属性 是不能被delete的
而 theDate 则会被看作是 window环境内 this.theDate . 即动态属性 所以可以被delete  
特例的  通过obj.prototype 这种 修改或扩展类的 原形属性 方式 delete也是无效的...
所以 你大可理解为 delete 专门删除 对象 的动态属性

最后总结一下. 仍然建议放弃 不声明变量 就使用的方式...  大多数人 使用这种方式的唯一目的 是全局变量
我们现在 通过window.theDate 或window['theDate'] 的方式 代替他.  以便养成好习惯.
2008-11-24 21:49
rzglei
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-9-13
收藏
得分:0 
回复 第2楼 frankqnj 的帖子
谢谢版主了,
2008-11-24 22:41
快速回复:我刚开始学习JAVASCRIPT对下面的问题不是很理解,请帮忙解释下:
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019965 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved