JS 入门1

1, a||b, 返回的是第一个true的值. obj || ss, 如果obj是有的,不是false,返回obj,如果ss是有,obj没有,返回ss.

2, 如果 在任何函数中 a=100, 这个a是全局变量. var a =100,a就是局部变量.

3, 如果 函数fun没有返回值,  var s = fun(xx); 这个s是undefined.

4, var fun(aa){xx};

 var s = fun;

s就是 fun(aa){xx}; 只有当s()才会执行. 有()就执行.

5, parseInt("655dd"); 返回是655; parsheInt("ds333"); 返回时NaN;

6, eval("sss"); 会把sss按照js执行.就是去掉字符串,按js执行字符串内容.

7, 把数字转化为2进制 num.toString(2);

8. 字符串.link("www.bd.cn"); == <a href="www.bc.cn">字符串..;就是给字符串加链接.

9,查看一个对象的构造函数 obj.constructor;

10, Math.random(); 生成0-1的随机数.

11,数组 a.concat(b), 得到新的数组,两个联合.

12, 数组 a.join(":"); 会把a中的元素一个一个按照:隔开

13,数组 a.sort()可以排序?? a.reverse()把a中的元素颠倒顺序.

14,obj.opener.xx opener是调用这个opener属性的对象的opener.

15,setTimeout(fn,time); 隔time后执行一次.   

setInterval(fun,time); 每隔time后执行一次.

要是需要清除,1,得到这个返回值var t=window.setInterval(fun, time); 2,  window.clearInterval(t);

16, 在函数中调用函数,funa(){funb(),c}; 用的是funb()的返回值. 如果要用这个函数 funa(){funb,xx};

17, window.history||history.go(n); n=-1回退1个. 1前进.

18, aDOM节点插入节点b a.appendChild(b); 

??a.innsertBefore(b,ref); 在ref节点前插入b.?? a可能必须要是b,ref的父节点.

19, 父节点fa.removeChild(son节点); 只能删除直接子节点,孙子不能删.

20, b.parentNode得到父节点. 删除本身 b.parentNode.removeChild(b);

21,document.append();渲染一次. 提高效率

22,style.readOnly='true'; 所有的都有style. style的有的属性有-,把-去掉,用驼峰字

23, IE的事件全局变量 event, 其他的e;

24, keydown, keyup是所有键都监听. keypress是a,b这些有效果的字的键才有效果. 

按键按一次会有keydown keypress keyup3事件.如果是功能键,就没有keypress.

25, ie attachEvent("事件名",fun)   其他 addEventListener("事件名",fun,boolean true是向上冒泡,false是不冒泡); 这是加事件. 取消时间: detachEvent("",fun);

26,IE特有的 document.all 可以判断是不是IE,进而写函数

27, 阻止鼠标事件 其他  e.preventDefault();IE  e.returnValue=false; 把这个写在函数里面,这个事件就不能调用了,函数也肯定不会执行了.

28, firefox如果调用函数,第一个会传入事件对象e.

29,可变参数: function say(...){}; ...是可变参数;

30,得到参数arguments ; 写 arguments就是所有参数的集合 arguments[0]就是第一个参数;

31, 新建一个对象并赋值:  var obj1 = new Object(); obj.v="给这个obj的v赋值"; var ojb2 = {v:"我这也是给obj2对象的v赋值"};

32,function b(){alert (this.v);} 调用这个函数的时候 b(); == window.b(); 这个this就是指向window, 这个function是window这个类的.这时候输出时undefined; 如果用b.call(b1); 就会吧window对象换成b1,这个this指向b1了. 如果b1给v赋过值,就会输出b1的v的值;

33, 定义一个类 : 

function Animal(name){

this.name=name;

 this.say=function(){}

};

如果是 var s =Animal()就是这个function的返回值,是undefine,

如果是 var s = new Animal("xxx");就是对象.

33,继承:

function classA(one){

this.one=one;

this.showOne=function(){alert(this.one);

}

function classB(two){

this.aaa = classA; //这句话的意思就是把classA的this的指向,从window变成是new出来的哪个对象了

this.aaa(two);

或者等价于 

var b = this; 

b.aaa=classA; //calssA的this就是这个b, 所以把classA的函数的作用域指向b了,b就有classA的所有方法了.

b.aaa(two);

或者等价于

classA.call(this,two); //就是吧classA的this转化为当前classB的this, 他的classA(one)中的one,第一个参数,传入的值是two.

}

classB就继承了classA,有A的属性one, A的方法 showOne,而且运行的时候跳出的是two;

objb = new classB("xxx");

objb.showOne(); 跳出xxx;

35, 原型链 

function calssC(third){};

classC.prototype=objB;

就是把class的原型指向一个对象,这样可以一直指向下去.就是xxx.prototype=xx;就是原型链.xxx有xx所有的方法和熟悉.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值