zoukankan      html  css  js  c++  java
  • javascript学习一、js的初步了解

    1、javascript的简介:
        *javascript 是一种基于对象和事件驱动的语言,主要应用于客户端。
            -- 基于对象:
                  ** 提供了很多对象,可以直接使用。
            --事件驱动:
                ** html做的网页是静态效果,javascript做的是动态效果。
            --客户端:
                主要是指浏览器。

        *js的特点:
            (1)交互性:
                --信息的动态交互。
            (2)安全性:
                --s不能访问本地磁盘中的文件。
            (3)跨平台性:
                --与java不同,js直接使用 浏览器跨平台。

        *javascript和java之间的区别:(没有任何关联)

            (1)java是sun公司(现在是oracle)发布
                js是网景公司发布。
            (2)javascript是基于对象的,java是面向对象的。
            (3)java是强类型的语言, js是弱类型的语言。
            (4)js是解析就可以执行, java需要先编译再执行。

        *js的组成
            有三部份
              (1)ECMAScript
                  --ECMA :欧洲计算机协会,   由其为js指定语法。
              (2)BOM
                  --broswer object model : 浏览器对象模型。
              (3)DOM
                  --document object model :文档对象模型。



    2、js和html的结合方式(两种)
        第一种:
            --使用一个标签:
                <script type="text/javascript" > js代码 </script>
        第二种:
            --引入外部文件:
                -- 创建一个 .js文件。
                -- <script type="text/javascript" src=" 外部文件地址 "> </script>
          注意: 在第二种中的script标签中不要写其他js代码了,不会被执行。

    3、js的原始类型和声明变量
        ** java中有是八大基本数据类型 : byte short int long float double char boolean
          js中,只有五个原始类型:
            --string: 字符串
                *** var str = "abc";

            --number: 数字类型
                *** var num = 123;

            --boolean: true和false
                *** var falg = true;

            --null:
                *** 获取对象的引用,null用来表示引用为空,所有对象的引用都为 object
                *** var date = new Date();

            --undifined
                *** 定义一个变量,没有被赋值
                           *** var aa;

        ** typeof() ;查看当前变量的数据类型。
        ** alert() ; 在页面跳出一个对话框。
        ** document.write();直接想页面输出的语句(可以把括号内的语句输出到页面上)
                    也可以输出html代码。

    4、js的语句
        --在java里面的语句:
            ***if语句
            ***switch语句
            ***循环语句: for 、while、 do-while

        --在js里面也有这些语句
            ***if判断语句
         注意:  *****=: 赋值
              *****==:判断

            ***switch语句
                --java从1.7才开始支持 string,枚举类型,
                --js中所有类型都支持。
                --switch(a){
                        case 1:
                        break;
                        case 2:
                        break;
                        default:
                          ... ...
                      }
        --循环语句: for 、 while 、 do-while:与java中的用法一致。

          其中, i++ 和 ++i 和java中是一样的。



    5、js的运算符
        **    += : x+=y;  等于: x=x+y;

        **js里面不区分整数和小数
            var j = 123;
            alert(j/1000*1000);
          --java中,结果为:0
          --js中, 结果为:123

        **js中的字符串的相加和相减的操作
            var str = "123";

            ***在相加的时候,做的是字符串的连接。
            ***在相减的时候,做的是减法运算。

            如: alert(str+1)//结果为1231.
                   alert(str-1)//结果为122.

          住意:当str不是一个数字的时候,减法运算会提示错误。
              var str = "abc";
              alert(str-1);//结果为:提示NaN: 表示这不是一个数字。

        **boolean也可以进行数学运算
            ***如果设置成 true ,进行数学运算的时候,相当于值为:1
            ***如果设置成 false ,进行数学运算的时候,相当于值为: 0

        **   == 和 === 的区别
              他们都是用来做相等判断的,
            *** == 比较的是 值
            *** === 比较的是 值 和 类型
              如: var i = "5";
                  i==5 为: true
                  i===5 为: false。


    6、九九乘法表的练习(输出到页面)
        *使用: document.write()输出到页面上。
          document.write可以输出变量,也可以输出html代码(加双引号)
          document.write里面是双引号,里面的标签属性必须使用双引号。


    7、javascript的数组
        --与java不同,js是弱类型的语言,数组中可以存放不同类型的值。
        --java数组定义: int[] arr = {1,2,3};

        --js数组定义方式(三种):
            第一种: var arr = [1,2,3] || var arr = [1,"2",true]
            第二种: 使用内置对象 Array,
                var arr = new Array(5); //定义了一个长度为5的数组。
                arr[0] = "1"; arr[1] = 2; arr[2] = true;

            第三种: 使用内置对象 Araay,
                var arr = new Array(3,"4",true);//定义一个数组,其中值为:3,4,true

        --数组中有一个属性 length: 获得数组的长度。

        --数组的长度是可变的。(与java数组进行区分)

        --数组可以存放不同类型的值(与 java 数组进行区分)


    8、js中的方法

        **在java中定义方法:
            修饰词 返回值类型 方法名(参数列表){
              方法体;
              返回值;
            }
              public int add(int a, int b){
                  int sum = a+b;
                  return sum;
              }

        **在js中定义方法,有三种方式:
            第一种方式:
              ***使用一个关键字 function
              ***function 方法名(参数列表){
                    方法体;
                    返回值(视需求,可有可无);
                }
                  for example:
                        function add(a ,b,c){
                          var sum = a+b+c;
                          return sum;
                        }
                  (调用方法名,使用定义的方法)

        第二种方式:
            匿名方法。
            *** var 变量名 = function(参数列表){
                    方法体;
                    返回值;
              }
                如:
                  var add = funtion(a,b){
                      var sum = a+b;
                      return sum;
                    }
                  (之后使用变量名调用方法)

        第三种方式:
            ***动态方法。
            ***使用一个js的内置对象 Function
              var 变量名 = new Function("参数列表","方法体 和 返回值"); (注意,参数和方法体之间是逗号)
                  var add = new Function("a,b", "var sum=a+b; return sum");
                    (之后使用变量名调用函数)
                ****注意,此方式中,可以预先定义好参数列表,和方法体与方法名,在定义方法的时候直接传进来。

    9、js的全局变量, 和局部变量
        **全局变量: 在script标签里面定义的一个变量,这个变量在页面中js部分都可以使用
              --在方法外部使用, 在方法内部使用, 在另一个scipt标签里使用。

        **局部变量: 在方法内部定义的一个变量,只能在在方法内部使用。
              --如果在方法外部使用,则会提示出错。
                --SCRIPT5009: "nn"未定义
                 12-js的局部变量.html,行18 字符3

        **ie(火狐)自带了一个调试工具,ie8及其以上版本,按F12,在页面下方出现调试栏。

    10、script标签可以放的位置

        **按照格式来说, script标签可以放在任何位置(head,body,甚至是html外)

        **但是,在开发中,为了能顺利和htnl代码结合,最好放在:</body> 的后面。

            原因:如果script语句中要使用body中的 (如<input type="text"/>中的)值 ,
                 而script本shent在head中,那么就会出问题,
                  html是从上到下进行解析的,此时,script中要使用body中
                 的值,但是还没有解析到body,就拿不到这个值。
            所以:建议script放在</body>得后面。

    11、js方法的重载

        **js中没有重载,在有多个同名但是不同参数的方法时,按照解析顺序,调用方法处使用
          其上面的离其最近的 定义的方法。(如果参数不合,就会报错: NaN)

  • 相关阅读:
    亲历dataguard的一些经验问答题
    [转]ORA-38500: USING CURRENT LOGFILE option not available without stand
    修改npm全局安装模式的路径
    Vue 环境搭建
    Linux下查看系统版本号信息的方法
    每天一个Linux命令(12):su命令
    Ubuntu 首次给root用户设置密码
    适用于Linux的windows子系统
    IDEA的terminal设置成Linux的终端一样
    Windows模拟linux终端工具Cmder+Gow
  • 原文地址:https://www.cnblogs.com/soficircle/p/6815294.html
Copyright © 2011-2022 走看看