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 相关文章推荐
购物车选中得到价格实现示例
Jan 26 Javascript
jQuery实现限制textarea文本框输入字符数量的方法
May 28 Javascript
使用jquery/js获取iframe父子级、同级获取元素的方法
Aug 05 Javascript
预防网页挂马的方法总结
Nov 03 Javascript
微信小程序 增、删、改、查操作实例详解
Jan 13 Javascript
基于input动态模糊查询的实现方法
Dec 12 Javascript
vue router导航守卫(router.beforeEach())的使用详解
Apr 19 Javascript
layui监听工具栏的实例(操作列表按钮)
Sep 10 Javascript
AI小程序之语音听写来了,十分钟掌握百度大脑语音听写全攻略
Mar 13 Javascript
Vue 同步异步存值取值实现案例
Aug 05 Javascript
vue 动态添加class,三个以上的条件做判断方式
Nov 02 Javascript
解决vue-pdf查看pdf文件及打印乱码的问题
Nov 04 Javascript
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
CI框架实现cookie登陆的方法详解
2016/05/18 PHP
win10下 php安装seaslog扩展的详细步骤
2020/12/04 PHP
JavaScript 格式字符串的应用
2010/03/29 Javascript
基于jquery的图片懒加载js
2010/06/30 Javascript
javascript获取作用在元素上面的样式属性代码
2012/09/20 Javascript
jquery实现pager控件示例
2014/04/09 Javascript
JS中使用Array函数shift和pop创建可忽略参数的例子
2014/05/28 Javascript
javascript比较两个日期的先后示例代码
2014/12/31 Javascript
jquery任意位置浮动固定层插件用法实例
2015/05/29 Javascript
总结几道关于Node.js的面试问题
2017/01/11 Javascript
jQuery插件HighCharts实现气泡图效果示例【附demo源码】
2017/03/13 Javascript
js中编码函数:escape,encodeURI与encodeURIComponent详解
2017/03/21 Javascript
详解用webpack把我们的业务模块分开打包的方法
2017/07/20 Javascript
JS实现简易换图时钟功能分析
2018/01/04 Javascript
记一次vue去除#问题处理经过小结
2019/01/24 Javascript
基于Webpack4和React hooks搭建项目的方法
2019/02/05 Javascript
基于JavaScript实现轮播图效果
2021/01/02 Javascript
python实现简单温度转换的方法
2015/03/13 Python
Python字符串逐字符或逐词反转方法
2015/05/21 Python
在IPython中执行Python程序文件的示例
2018/11/01 Python
用Python去除图像的黑色或白色背景实例
2019/12/12 Python
Python坐标轴操作及设置代码实例
2020/06/04 Python
Expected conditions模块使用方法汇总代码解析
2020/08/13 Python
css3的@media属性实现页面响应式布局示例代码
2014/02/10 HTML / CSS
JD Sports瑞典:英国领先的运动时尚商店
2018/01/28 全球购物
Fossil美国官网:化石手表、手袋、首饰及配饰
2019/02/17 全球购物
广州一家公司的.NET面试题
2016/06/11 面试题
中专生自荐信
2013/10/12 职场文书
学生个人的自我评价分享
2013/11/05 职场文书
甜品蛋糕店创业计划书范文
2014/02/06 职场文书
制药工程专业职业生涯规划范文
2014/03/10 职场文书
法律顾问服务方案
2014/05/15 职场文书
大学生创业计划书
2014/08/14 职场文书
保管员岗位职责
2015/02/14 职场文书
飞屋环游记观后感
2015/06/08 职场文书
python读取mnist数据集方法案例详解
2021/09/04 Python