学习记录

(1)for 循环语句优化

原:for(i=0;i<elemets.children,length;i++)后:for(i=0,len=elemets.children.length;i<len;i++)

(2)判断类样式中是否包含指定样式

if( div.className.indexOf ('XX') !=-1)//找到对应字符串,没有找到返回-1

(3)功能相同

onmouseover,onmouseup触发事件冒泡

onmouseenter,onmouseleave不触发事件冒泡。

(4)对一个节点新增自定义索引

link.Attribute('index',i);//新建一个index属性,值为i

(5)elemets.click

与onClick相同都是点击后发生,不同的是.click是浏览器自动模拟成人行为触发。

可以应用于轮播图的左右键点击时下方索引形式也同时改变

(5)变量top

在BOM中top是其中一个属性,如果采用top命名有可能出现错误,所以尽量不使用来做变量名

(6)轮播图

在轮播图中图片和下面节点采用动态生成的方式

(7)面向对象

在js中创建对象模板是构造函数,用this指向对象成员

function News(name){

this.name=name;}

var news=new News('xiaomin');

工厂函数,适合重复创建相似对象,但不能判断他里面类型

function nesw(name){

var a=new object();

a.name=name;

return a;}

面向自变量,适合单个不一样对象

var a={

name:'xiaomin’;}

原始用法

var a=new Object();空对象

a.name='xiaomin';

(8)函数类型判断

简单类型;typeof a;

复杂类型:a instanceof array(类型名称);

(9)获取函数基本类型

无法用typeof判断对象的具体类型,只会返回object

改用对象.constructor来实现

例:News.constructor===News

判断是否属于News函数,是回true,不是回false

但是不建议使用,因为constructor值可以被改变

推荐用instanceof 判断对象是否属于某个构造函数的实例/对象

(10)静态成员和实例成员

静态成员是直接用对象来调用

实例成员是构造函数中的成员就是实例成员

posted @ 2019-08-09 15:21  翎雀  阅读(120)  评论(0)    收藏  举报