A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© smhjx2006 中级黑马   /  2013-6-9 11:06  /  2972 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Javascript:
       是Netscape公司语言,基于对象和事件驱动。
        和java的不同之处:
        1、所属公司不一样。java是sun公司,现在是Orcale公司。
        2、js是基于对象,java是面向对象。
        3、js是由浏览器解释并执行,java是由jvm解释并执行。
        4、js是弱类型的语言,java是强类型。
        5、js是非严谨的,java是严谨的。
        javascript运行在客户端。

        Javascript的基本语法:
        1、变量:
                通过var关键字定义变量,该变量可以赋予不同类型的常量。
                var x=3;
                x="abc";
                特殊的常量:undefined
        2、语句:
                if,switch,while,do  while,for
                使用逻辑运算符进行布尔表达式连接的时候,需要时短路与和短路或。&& ||
                因为在js中,非0即为true,0为false。非null为true,null为false。

                js特有的语句:
                with(对象){}:可以确定对象所使用的范围。在范围内,可以直接使用对象的
                属性和行为,而不用"对象."的形式调用。简化了对象的操作。
                for(变量 in 对象):可以对对象的属性及行为进行遍历。
        3、数组
            对于js数组的特点在于:该数组的长度是可变的,相当于java中的集合。
            该数组中可以存放的元素类型是可以不同的。
            定义格式:
                var arr = [3,true,"abc"];
                var arr = new Array();
                var arr = [[3,1,9],[3,4]]
            操作形式和java一样。都是通过for进行遍历,同时也使用了指针的思想。
        4、函数。
            通过function关键字定义函数。
            a,一般函数。
                格式:function 函数名(形式参数...)
                    {
                        执行语句;
                        return 返回值;
                    }
                通常为了提高代码的复用性可以将代码封装成函数。
                两个明确:
                    1,明确该功能实现后的结果。
                    2,该功能在实现过程中是否有未知内容参与运算。
            b,动态函数。
                使用的是Function对象。
                var show = new Function("x","y","return x+y;");
                动态函数的特点:可以将参数列表,和方法体作为参数传递。
            c,匿名函数。
                一般函数的简写形式。
                function(){}
                匿名函数通常可以用于事件的处理。
                如:
                window.onload = function(){alert('onlaod over');}

            在函数使用时需要注意的部分:
            function show()
            {
                return "show run";
            }
            var method = show();
            var method = show;
            两句代码都是正确的,
            第一句表示的是show方法运行后的结果赋值给method变量。
            第二句表示的是将show指向的对象的地址赋值给method。那么method
            也指向了该对象。那么就可以通过method();的形式来调用这个show()方法。
        --------------------

        js可以通过对象形式将数据进行封装。
        首先对对象进行描述,通过函数来完成。
        function Person(name,age)
        {
            this.name = name;
            this.age = age;
        }
        var p = new Person("lisi",30);
        alert(p["name"]+"..."+p.age);
        p.show = function()
        {
            alert("show run");
        }
        -----------------
        Javascript中的已定义好的一些对象。
        1,String,Math,Date,Array,Function
        这些对象都有一个属性叫做prototype原型。
        prototype可以获取指定的对象引用
        可以通过该引用给已有的对象赋予一些新的功能。
        那么在使用该对象时,可以直接调用定义好的新功能。

        function getMax()
        {
            var max = 0;
            for(var x=1;x<this.length;x++)
            {
                if(this[x]>this[max])
                    max=x;
            }
            return this[max];
        }
        var arr = [3,4,16,7];
        arr.sort();//直接调用Array对象的sort方法对数组进行排序。
        那么可不可以像调用sort方法一样调用getMax方法呢?
        就需要将getMax方法添加到Array对象当中。
        Array.prototype.getMax = getMax;
        var x = arr.getMax();
        alert("max="+x);


        var str = "abc";
        str.substring(1,2);
        str.bold();//<b>str</b>
        /*//模拟一下String中的fontcolor方法
        function mycolor(color)
        {
            return "<font color='"+color+"'>"+this+"</font>"
            
        }
        String.prototype.color = mycolor;
        str.color("red");
        */
        //给字符串对象定义个新功能,去掉字符串两端的空格。
        function trim()
        {
            var start,end;
            start = 0;
            end = this.length-1;
            while(start<=end && this.charAt(start)==" ")
                start++;
            while(start<=end && this.charAt(end)==" ")
                end--;
            return this.substring(start,end+1);
        }
        String.prototype.trim = trim;
        var s = "    ab  c   ";
        var s = s.trim();
        alert("---"+s+"--");//ab c
        -----------------------------------------
        常见的全局方法。
        parseInt(number,[radix])://将数字格式的字符串转成整数。如果指定了基数,
        那么numstr,就会按照指定的基数进行转换。
        var num = parseInt("110",2);//表示"110"这个字符串会按照二进制进行转换。
        var x = 6;
        alert(x.toString(2));//110//获取6的对应的二进制表现形式。

        --------------------------------
        javascript需要被浏览器所解释执行,就必须将代码和html相结合。
        结合方式是什么样的呢?
        1、通过定义<script>标签将js代码存入其中。并指定type属性。方便浏览器启动指定的解析引擎。
        2、也可以通过<script>标签,使用src属性连接一个指定的js文件进来。



6 个回复

倒序浏览
有没有了?整理成文档,分享给大家
回复 使用道具 举报
整理中!。。。嘿嘿!。。。。。
回复 使用道具 举报
可以啊!加油!互相学习!
回复 使用道具 举报
...楼主辛苦啦.顶你哦.
回复 使用道具 举报
:lol99999999
回复 使用道具 举报
顶一下!!!                                      
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马