Javascript_Bom

1.Js的概念

1.JavaScript是一种解释性脚本语言,浏览器加载,浏览器执行用来向页面添加交互行为;

2.Java Script由三个主要组成部分:ECMAScript(核心),BOM(浏览器对象模型),DOM(文档对象模型);

特点:

交互性(它可以做的就是信息的动态交互)
安全性(不允许直接访问本地磁盘)
跨平台性(只要是可以解释js的浏览器都可以执行,和平台无关)

 

2.Js引入的三种方式

2.1行内

语法:<a href="javascript:alert('点你就点你');">点我,点我...</a>

 

<!-- 行内js-->

         <!--不推荐写-->

         <a href="javascript:alert(1)">哈哈</a>

         <!--推荐的写法-->

         <a href="javascript:void(0)" onclick="alert(2)">onclick</a>

 

2.2内部JS

页面内的JS是写在一组<script>标签内,这组标签可以写在页面内的任意位置

示例代码:

<script type="text/javascript">

   alert(“不点我也来”);

</script>

 

仅仅在页面使用的代码

 

2.3外部JS

外部JS方式,其实就是先单独定义一个JS文件,然后将这个JS文件与要使用的网页将关系关联起来

 

引入外部JS文件:

<script type="text/javascript" src="JS文件位置"></script>

多个页面共享的js代码,提取到公共的js文件中

 

3.JavaScript变量

  1. 使用var关键字,无论是何种数据类型的变量,均可以使用var关键字来进行声明;弱类型
  2. 程序可以用变量名来指向具体的对象内存,并通过变量名来获得对应的对象

语法

var 变量名;                        //声明变量【推荐方式】

var 变量名=值;                     //声明变量并赋值【推荐方式】

已声明赋值的变量 = 另一种类型值;   //【不推荐】

不声明变量 = 值;                   //不事先声明变量直接使用

示例代码

    <script type="text/x-javascript">

           

            var num;

            num=10;

            console.debug(num)

           age=22;

            console.debug(age)

 

 

4.JavaScript原始数据类型

JavaScript中的原始数据类型相当于Java的基本数据类型,在js中可以使用typeof 和typeof()判断当前变量属于那种数据类型;

例子:var a = true;          alert(typeof a);//boolean           alert(typeof (a));//true

 

4.1number(数值类型)

/*number类型:数值类型,计算机命令为处理数据而生*/

              var num=10;

              console.debug(1/10);//无穷大  0.1

              console.debug(isFinite(1/10))//判断是否为无穷大   true

              var n=new Number(15);

              console.debug(n);

 

4.2boolean(布尔类型)

/*bollean类型*/

            var res=false;

            console.debug(res)//false

            res=new Boolean();

            console.debug(res)

            if("易烊千玺"){

                console.debug("易烊千玺老好了")

            }

           

 

4.3String (String类型)

/*String类型*/

            var a="王嘉尔";

            a="张艺兴";

            console.debug(a);//张艺兴

            console.debug(a.length);//3

           

 

4.4null(空对象),undefined(未定义或未初始化)

/*null undifiend解释*/

            var pason=null;

            console.debug(pason)//null

            var h;

            console.debug(h);//undefined

 

5.JavaScript运算符

比较运算

    /*等值运算符*/

            var a=10;

            var b="10";

            console.debug(a==b);//true

            console.debug(a===b);//false

            console.debug(a!==b);//true

            for(var i=1;i<=10;i++){

                console.debug(88888)

            }

 

6.JavaScript函数

 

语法

    function run(num1,num2){

                console.debug(num1+num2)

            }

            run(10,20)

            run(10)

            run();

全局变量和局部变量

var name="全局变量"

        function walk(){

        name="小姐姐";

            }

        //walk

        function smile(){

        var name="小哥哥"

            }

        smile;

        console.debug(name);

       

匿名函数语法

/*匿名函数*/

var fun=function(){

    console.debug("小姐姐")

        }

    fun();

7.JavaScript对象

7.1本地对象

7.1.2Date:日期对象

var date= new Date();

            console.debug(date);

            date.dateFormat = function(){//为改对象添加一个函数

                var year = this.getFullYear();

                var mouth = this.getMonth();

                var day = this.getData();

                var hour = this.getHours();

                var min = this.getMinutes();

                var sec = this.getSeconds();

                return year+"/"+mouth+"/"+day+" "+hour+" "min+" "+sec;

            }

           

            var frm = date.dateFormat();

            console.debug(frm);

7.2String字符串对象

var str = "佳宇是个大沙雕"

            var s = str.split();

            console.debug(s)

           

            var word=String.fromCharCode(65)

            console.debug(word)

           

7.3Array数组对象

arr = new Array(10);//单独写一个长度

            console.debug(arr)

           

            arr = new Array(10,20,30);//多个元素

            console.debug(arr)

            console.debug(arr[1])

           

            arr[66]=88;

            console.debug(arr)

            console.debug(arr[66]);

           

           

            /*for in 遍历*/

            for(var i in arr){

                console.debug(arr[i])

               

            }

 

7.4系统函数

需要,解码和编码

//IE浏览器不允许发送中文

        var ss = "百度"

        var str = "www.baidu.com?url="+ss;

        //编码

        var u =encodeURI(str);

        console.debug(u);

        //解码

        var i = decodeURI(u)

        console.debug(i)

       

        /*

         使用encodeURICommponent和decodeURICommponent

         * */

        /*编码*/

        str = "www.baidu.com?url=http://www.qq.com";

        var se =encodeURIComponent(str);

        console.debug(se);

       

        //解码

        var a = "console.debug('eval函数实例')";

        console.debug(a)

        event(a);

7.4.1Math

num = Math(1.1);

        console.debug(num)

       

        //65-97

        var num = parseInt(Math.random()*32)+65

        console.debug(num)

       

        var word = String.fromCharCode();

        console.debug(word)

 

 

7.2自定义类

    function Person(){

                console.debug("2222")

            }

            var pson = new Person();

            console.debug(typeof pson)

            Person();

           

            /*

             * 字段

             */

            function Person(name,age){

                this.name = name;

                this.age = age;

               

            }

            var p = new Person("佳宇",20);

            console.debug(p)

            console.debug(p.name)

            /*

             * 方法

             */

            function eat(){

                console.debug("吃甲鱼")

            }

            function Person(){

                //this.drink=eat;//前面代表Person属性,属性梭赋值的是函数

                this.smok=function(){

                    console.debug("吸一口")

                }

            }

            p = new Person()

            //p.drink

            p.smok()

           

           

            /*

             * part2对象添加属性的方式

             */

            function Animal(name,age){

                this.name=name;

                this.age=age;

                this.toString=function(){

                    console.debug(this.name+"-"+this.age);

                }

            }

            var aml = new Animal("二狗",18)

            console.debug(aml)

            console.debug(aml.age)

            console.debug(aml.name)

            aml.toString()

            var vml = new Animal("李四",22)

            console.debug(vml)

            //给对象添加属性

            aml.sex="男";//相当于给aml对象。仅仅是给aml这个对象添加属性

            aml.run=function(){

                console.debug("6666")

            }

            console.debug(aml)

            aml.run();

           

            /*

             * part2给原形添加属性

             *

             */

            Animal.prototype.song=function(){

                console.debug("佳宇来一个")

               

            }

            Animal.prototype.phonenum = "159645236554";

            aml.song()

            vml.song()

            console.debug(aml.phoneNum)

            console.debug(vml.phoneNum)

8.BOM

 

Window

  1. window对象是BOM中的顶级对象,默认可以省略(即调用其函数时可以省略window.);
  2. window对象是相对于web浏览器而言的,依赖于浏览器,在浏览器中全局对象指的就是window对象;
  3. window对象可以获取其他BOM对象;

注意:全局函数和window对象的函数不一样。全局函数不属于任何一个内置对象

需要提示框

   

            var res;//时钟任务的标记

            function stop(){

                res=setInterval("document.getElementById('text2').value=new Date()",1000);

               

            }

           

            function change(){

                var pass = document.getElementById("pass")

                is(pass.type=="password"){

                    pass.type="text"

                   

                   

                }else{

                    pass.type="password"

                   

                }

                    window.location.href = "http://www.baidu.com";

            }

<body>

        <input type="button" value="开始" onclick="start()">

        <input id="text1" type="text" value="">

        <input id="text2" type="text" value="">

        <input type="button" value="结束" onclick="stop()"><br/>

       

        password:<input id="pass" type="password" /><input type="button" value="密码" onclick="change()"/>

       

    </body>

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值