网络编程课程复习

js行为:为响应某一事件(Event)而采取的一个动作(Action)的过程。由动作和事件两部分组成。

js数据类型
1、基本数据类型:number、boolean、string、null、undefined
2、引用数据类型:(1)宿主对象:BOM、DOM(2)内置对象:Global、Math(3)原生对象:String Boolean Date Array Object Number RegExp

数组
创建:
1、var array=new Array(5); array[1]=a;array[2]=2;...
2、var array=new Array(1,2,3,A);
3、var array=[1,3,a,h]
给数组增加一列:array.push("小明")
删除数组列:array.pop("小明");
将数组中的元素连接:array.join("---")
将两个数组合并成一个新数组:array1.concat(array2)

数据类型的转换
自动转换:任何数据和字符串相加都是字符串,相减则将字符串转化为整数,如果无法转化则为NaN
强制转换:(1)转换成字符串:
toString()函数,Number类型的转换有默认模式和基模式对于null和undefined值强制转换会报错。num.toString();num.toString(4)(以二进制转换)
String()可以把任何值转换成字符串,这种强制转换和toString()的唯一不同之处在于,对于null和undefined值也能强制转换而不会报错。

(2)将字符串转换成数字:
parseInt()函数:找数字,如果是数字直接返回,遇到非数字截止,如果首位是非数字则返回NaN,存在基模式parseInt(10,count(6));

parseFloat()函数:从位置 0 开始查看每个字符,直到找到第一个非有效的字符为止,然后把该字符之前的字符串转
换成整数。 不过,对于这个方法来说,第一个出现的小数点是有效字符。如果有两个小数点,第二个小数点将被看作无效的。parseFloat() 会把这个
小数点之前的字符转换成数字。这意味着字符串 "11.22.33" 将被解析成 11.22。 使用parseFloat()方法的另一不同之处在于,字符串必须以十进制形
式表示浮点数,而不是用八进制或十六进制。该方法会忽略前导 0,所以八进制数 0102 将被解析为 102。对于十六进制数 0xA,该方法将返回 NaN,
因为在浮点数中,x 不是有效字符。(注释:经测试,具体的浏览器实现会返回 0,而不是 NaN。)

Number()函数:只是它转换的是整个值,而不是部分值。 还记得吗,parseInt() 和parseFloat() 方法只转换第一个无效字符之前的字符串,因此 "1.2.3" 将分别被转换为 "1" 和 "1.2"。 用 Number() 进行强制类型转换,"1.2.3" 将返回NaN,因为整个字符串值不能转换成数字。如果字符串值能被完整地转换,Number() 将判断是调用 parseInt() 方法还是 parseFloat() 方法。number()括号中是false,返回0,true返回1

(3)转换成布尔值:
Boolean()函数:当要转换的值是至少有一个字符的字符串、非 0 数字或对象时,Boolean() 函数将返回 true。如果该值是空字符串、数字 0、undefined 或 null,它将返回 false。

面向对象继承
1、冒充:子类名 instanceof 父类名==false
子类中:this.inherit=父类函数名,this.inherit(name)
子类中:父类名.call(this,name)
子类中:父类名.apply(this,[name,age])
2、原型链:子类名 instanceof 父类名==true
在子类外边:子类名 prototype=new 父类名();

js选择器:document.getElementById();document.getElementsByClassName();

BFC:block formatting context,触发BFC柜子中的元素不会对柜外的元素造成影响

css样式的引用:
内联:<p style="color:red;width:100px"></p>
内部:<style>.div{width:100px;height:100px}</style>
外部:<link href="css文件路径" type="text/css" rel="stylesheet">

js行为的引用:
内联:<a href="javascript:alert('win')"></a>
内部:<script>...</script>
外部:<script src="文件路径" type="text/javascript"></script>

js控制css
内联:.style
内部和外部:var od=document.stylesheets(得到内外样式的个数) 得到第几个的具体样式:火狐:od[1].cssRules IE :od[1].rules
最终样式(只读):火狐 document.defaultView.getComputedStyle(document.getElementById("div1"),"");
IE document.currentStyle;

js事件的绑定和解除:
传统:document.getElementByTagName("p")[0].onclick=function(){}
现代事件:false冒泡,true捕获
var oo=document.getElementById("div1")
function show(){}
火狐:oo.addEventListenner("click",show,false/true);
oo.removeEventListenner("click",show,false/true);
IE:oo.attachEvent("onclick",show)(IE只能冒泡,且引号内必须为缺切函数)
oo.detachEvent("onclick",show)

选择器优先级:
内联>内部>外部
id>class
伪类和类优先级相同,但在伪类前有元素时,其优先级高于类
优先级最低的是*,最高时!important

刷新页面:
window.reload;

BOM:
定时器:setTimeOut(test,2000)等两秒钟执行test函数
间隔执行:setInterval(test,2000)间隔两秒执行一次test
向用户弹出对话框,并等待用户关闭:alert
弹出对话框,并返回布尔值:confirm
弹出输入框:prompt(用户输入的都是String类型的)
.close():关闭窗口
window.screen.height/width/colordepth/navagitor

css中元素的隐藏:
1、使用display:none来隐藏所有内容
display:none可以让网页中所有内容不显示,如代码、文字、链接、图片、div层,是推荐的内容隐藏方式。
2、使用visibility:hidden来隐藏内容
visibility:hidden和display:none可以隐藏的内容几乎一样,但唯一区别是它虽然隐藏了内容,但被隐藏掉的内容仍旧占据空间,这段隐藏了内容却保留空间的位置会在网页中显示为空白。
3、overflow:hidden这种方式可以隐藏掉固定区域外的内容,它可以有效控制显示区域。但应注意,使用它时需要给它定义宽度和高度,否则会无效。
4、opacity:0 opacity属性我相信大家都知道表示元素的透明度,而将元素的透明度设置为0后,在我们用户眼中,元素也是隐藏的,这算是一种隐藏元素的方法。

 


 

posted @ 2016-06-05 12:55  冯小漂儿  阅读(175)  评论(0编辑  收藏  举报