[学习笔记]JavaScript基础

来源:互联网 发布:男友一夜 知乎 编辑:程序博客网 时间:2024/05/21 11:35

JavaScript组成

1.核心(ECMAScript):描述了该语言的语法和基本对象    (翻译、解释器)   ECMA几乎没有兼容行问题

2.文档对象模型(DOM):描述了处理网页内容的方法和接口   (给了我们操作HTML页面的一个入口)DOM有一些操作不兼容

3.浏览器对象模型(BOM):描述了与浏览器进行交互的方法和接口   BOM完全不兼容


变量类型

类型:typeof运算符

常见类型:number、string、boolean、undefined、object、function

一个变量应改只存放一种类型的数据,不然容易乱.

数据类型转换:

显示类型转换(强制类型转换)parseInt()、parseFloat()

隐式类型转换  如:比较a和b, a==b(自动转换类型,然后比较),a===b(不转换类型,直接比)

<script>    var a = '12';    var b = '3';    alert(a + b);  //结果为123   字符串连接          alert(a - b);  //结果为9      隐式转换类型  然后相减</script>

NaN不等于NaN


取非行间样式

IE下:currentStyle      例:alert(oDiv.currentStyle.width);

Chrom和FF下:getComputStyle有两个参数第一个是要获取的div 第二个随便什么都行 

例:alert(getComputStyle(oDiv,null).width);

 <script>        //将常用函数封装        function getStyle(obj, name) {            //解决兼容性问题            if (obj.currentStyle)            {                return obj.currenStyle[name];            }            else {                                return getComputedStyle(obj,false)[name];            }        }        window.onload = function () {            var oDiv = document.getElementById('div1');            //alert(oDiv.currentStyle.width);            //alert(getComputedStyle(oDiv,null).width);            alert(getStyle(oDiv, 'width'));            //如果是background则无法获取,因为是复合样式        };    </script>

arguments

arguments是一个数组,是可变参,不定参。

如:

<script>        //结果为4,因为传入了4个参数    function sum()    {        alert(arguments.length);    }    sum(12,8,5,6);    </script>


DOM

DOM其实就是document

浏览器对DOM的支持情况:

IE 10%(IE6到IE8) 到了IE9基本跟FF差不多

Chrom 60%

FF 99%

DOM节点:

首尾子节点:

有兼容性问题

fristChild(IE6到IE8使用)、fristElementChild(其他高版本浏览器使用)

lastChild、lastElementChild

兄弟节点:

有兼容性问题

nextSibling、nextElementSibling

previousSibling、previousElementSibling

DOM方式操作元素属性:

获取:getAttribute(名称);

设置:setAttribute(名称,值);

删除:removeAttribute(名称);





0 0
原创粉丝点击