javascript中的一些注意事项 更新中


Posted in Javascript onDecember 06, 2010

一.prototype原型对象,需要注意的原则是: 
 (1). 使用原型可以大量减少每个对象对内存的需求量,因为对象可以继承许多属性。
(2). 即使属性在对象被创建之后才被添加至原型中,对象也能够继承这些属性。
示例代码:

<script type="text/javascript"> 
function print(msg) 
{ 
document.write(msg,'<br/>'); 
} 
function printhr() 
{ 
document.write('<hr/>'); 
} 
print("prototype属性:<br/>"+ 
"1. 使用原型可以大量减少每个对象对内存的需求量,因为对象可以继承许多属性。<br/>"+ 
"2. 即使属性在对象被创建之后才被添加至原型中,对象也能够继承这些属性。"); 
printhr(); 
function User(name) 
{ 
this.name=name; 
} 
var zhang = new User('老张'); 
zhang.favchannel ='hello'; 
User.prototype.favchannel='CCTV'; 
Object.prototype.qq ='569723660'; 
print(zhang.favchannel); 
print(zhang.qq); 
</script>

运行结果为:
prototype属性:
1. 使用原型可以大量减少每个对象对内存的需求量,因为对象可以继承许多属性。
2. 即使属性在对象被创建之后才被添加至原型中,对象也能够继承这些属性。
二.setTimeout和setInterval 两个函数都定义在window对象中。setTimeout(fun_name,time_minisec)作用是在time时间后运行fun_name函数一次;setInterval(fun_name,time_minisec)作用是每隔time_sec时间都去运行fun_name函数。
示例代码如下:
<html> 
<head></head> 
<body> 
<div id="show"></div> 
<input type="button" value='' id='btntime'></input> 
<script type='text/javascript'> 
function print(msg) 
{ 
document.write(msg,'<br/>'); 
} 
var changetime = function() 
{ 
var d=new Date(); 
var h=d.getHours(); 
var m=d.getMinutes(); 
var sec=d.getSeconds(); 
var ampm=(h>=12)?'PM':'AM'; 
if(h>12) h-=12; 
if(h==0)h=12; 
if(m<10) m='0'+m; 
var t=h+':'+m+':'+sec+" "+ampm; 
var button = document.getElementById('btntime'); 
button.value = "setInterval:"+t; 
} 
changetime(); 
setInterval("changetime()",1000); 
function time_setTimeOut() 
{ 
var d=new Date(); 
var h=d.getHours(); 
var m=d.getMinutes(); 
var sec=d.getSeconds(); 
var ampm=(h>=12)?'PM':'AM'; 
if(h>12) h-=12; 
if(h==0)h=12; 
if(m<10) m='0'+m; 
var t=h+':'+m+':'+sec+" "+ampm; 
document.getElementById('show').innerHTML='setTimeout:'+t; 
setTimeout('time_setTimeOut()',1000); 
} 
time_setTimeOut(); 
</script> 
</body> 
</html>

三.本地对象,内置对象和宿主对象
1.本地对象包含的内容有 Object、Function、Array、String、Boolean、Number、Date、RegExp、Error、EvalError、RangeError、ReferenceError、SyntaxError、TypeError、URIError 都是一些 ECMA-262 定义的引用类型。
2.内置对象:由 ECMAScript 实现提供的、独立于宿主环境的所有对象,在 ECMAScript 程序开始执行时出现(ECMA-262定义), 内置对象只有两个Global 和 Math ,它们都是本地对象。内置对象就是一种特殊的本地对象。
3.宿主对象:所有非本地对象都是宿主对象(host object),即由 ECMAScript 实现的宿主环境提供的对象。
总之,本地对象,就是那些官方定义好了的对象。内置对象是本地对象的一种,其只包含Global对象和Math对象。而宿主对象则是那些官方未定义,你自己构建的对象加上DOM和BOM对象组成的。

四.Array.prototype.slice.call(_array,begin[,end]) 的使用相当于_array.slice(begin[,end]),不过Array.prototype.slice.call的效率要远远高过第二种用法。
示例:

function p(msg)

{

document.write(msg,'<br/>');

}

p(Array.prototype.slice.call([1,2,3,4],2));

p([1,2,3,4].slice(2));
运行结果:

3,4

3,4
(注:记录一下这些内容只是以后查阅起来方便,作为自己知识积累的记录。其中有很多是参考网络上的资源,不再一一写出出处,还请原作者见谅。)

Javascript 相关文章推荐
Javascript开发包大全整理
Dec 22 Javascript
使用javascript实现页面定时跳转总结篇
Sep 21 Javascript
javascript学习笔记之10个原生技巧
May 21 Javascript
javascript实现无限级select联动菜单
Jan 02 Javascript
JavaScript中实现依赖注入的思路分享
Jan 15 Javascript
JS+CSS3实现超炫的散列画廊特效
Jul 16 Javascript
详解bootstrap用dropdown-menu实现上下文菜单
Sep 22 Javascript
详解node nvm进行node多版本管理
Oct 21 Javascript
vue监听input标签的value值方法
Aug 27 Javascript
VUE 实现动态给对象增加属性,并触发视图更新操作示例
Nov 29 Javascript
手把手教你如何编译打包video.js
Dec 09 Javascript
关于Vue Router的10条高级技巧总结
May 06 Vue.js
JavaScript Accessor实现说明
Dec 06 #Javascript
关于Javascript模块化和命名空间管理的问题说明
Dec 06 #Javascript
javascript处理table表格的代码
Dec 06 #Javascript
菜鸟javascript基础资料整理3 正则
Dec 06 #Javascript
菜鸟javascript基础资料整理2
Dec 06 #Javascript
菜鸟javascript基础整理1
Dec 06 #Javascript
js 上传图片预览问题
Dec 06 #Javascript
You might like
php把session写入数据库示例
2014/02/26 PHP
PHP实现的一致性Hash算法详解【分布式算法】
2018/03/31 PHP
Auntion-TableSort国人写的一个javascript表格排序的东西
2007/11/12 Javascript
深入理解JavaScript系列(1) 编写高质量JavaScript代码的基本要点
2012/01/15 Javascript
jquery实现div拖拽宽度示例代码
2013/07/31 Javascript
异步动态加载JS并运行(示例代码)
2013/12/13 Javascript
解决html按钮切换绑定不同函数后点击时执行多次函数问题
2014/05/14 Javascript
javascript面向对象之定义成员方法实例分析
2015/01/13 Javascript
jquery删除指定子元素代码实例
2015/01/13 Javascript
浅析四种常见的Javascript声明循环变量的书写方式
2015/10/14 Javascript
jQuery获取父元素及父节点的方法小结
2016/04/14 Javascript
Vue的事件响应式进度条组件实例详解
2018/02/04 Javascript
vue 实现通过手机发送短信验证码注册功能
2018/04/19 Javascript
javascript的delete运算符知识点总结
2019/11/19 Javascript
[07:39]第一届亚洲邀请赛回顾视频
2017/02/14 DOTA
Python获取远程文件大小的函数代码分享
2014/05/13 Python
Python实现按特定格式对文件进行读写的方法示例
2017/11/30 Python
详解Python中如何写控制台进度条的整理
2018/03/07 Python
Python爬虫实战:分析《战狼2》豆瓣影评
2018/03/26 Python
python用post访问restful服务接口的方法
2018/12/07 Python
python实现多进程通信实例分析
2019/09/01 Python
Python tkinter和exe打包的方法
2020/02/05 Python
详解CSS3中使用gradient实现渐变效果的方法
2015/08/18 HTML / CSS
Pretty Little Thing美国:时尚女性服饰
2018/08/27 全球购物
大学三年的自我评价
2013/12/25 职场文书
《都江堰》教学反思
2014/02/07 职场文书
房屋出租协议书范本(标准版)
2014/09/24 职场文书
2014年公务员转正工作总结
2014/11/07 职场文书
2014年惩防体系建设工作总结
2014/12/01 职场文书
旷课检讨书范文
2015/01/27 职场文书
长城英文导游词
2015/01/30 职场文书
四风之害观后感
2015/06/09 职场文书
婚庆主持词大全
2015/06/30 职场文书
2015年音乐教学工作总结
2015/07/22 职场文书
对Golang中的FORM相关字段理解
2021/05/02 Golang
Python中的socket网络模块介绍
2022/07/23 Python