zoukankan      html  css  js  c++  java
  • JavaScript 基本语法

    JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处理

      1、JavaScript代码的引用及注意事项

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title></title>
    
        <!--第一种引用方式-->
        <script type="text/javascript">
        //js代码区
        </script>
    
        <!--第二种引用方式,最常用-->
        <script type="text/javascript" src="../jquery-3.1.0.js"></script>
      <!--HTML有这两种引入JS的方法,但是你感觉到有什么可以再完善的地方吗?-->
      <!--因为HTML代码是从上至下执行的,如果JS放在上面的话,就会导致必须先完成复杂的JS加载,然后才能显示网页。-->
      <!--所以最好的做法是:将JS引用放到HTML的最底部,最后加载。-->
    </head> <body> </body> </html>

      

      2、变量的声明

    #全局变量
    age = 18
    #局部变量
    var age = 18
    

    注:注释 // 或 /* */

    <script type="text/javascript">
            /*
            name = 18
            var name=18
            */
        </script> 

      3、基本数据类型

      数字(Number)

      

      4、字符串类型String

    var name = ' kongzhagen ';
    var age_str = String(18);

    常用方法:
      name.length 结果:12
      name.charAt(4) 结果:'g'
      name.indexOf('g') 结果:4
      name.substring(0,4) 结果:' kon'
      names.slice(1,3) 结果:'ko' #两个索引的位置
      name.trim() 结果:'kongzhagen'

      布尔型Boolean

    true,false均小写
    Boolean(1==1) 结果:true Boolean(1==2) 结果:false

      5、数组(列表)Array

    var names=['a','b','c','d']
    var ages=Array(11,22,33,44)  #Number类型变数组
    常用方法:
      追加:
        names.push('e') #列表后面追加 ["a", "b", "c", "d", "e"]
        names.unshift('p')  #列表前面追加["p", "a", "b", "c", "d", "e"]
        names.splice(1,0,'qq') #在列表指定位置追加,在第1个位置追加qq,删除0个元素,有返回值 ["p", "qq", "a", "b", "c", "d", "e"]
      移除:
        names.pop() #移除最后一个元素,有返回值
        names.shift() #移除最前面一个元素,有返回值
        names.splice(1,2) #移除索引位置1,2的值
      合并:
        name=name1.concat(name2)  #将name1和name2合并成一个新数组
      反转:
        sss.reverse()  #数组反转
      字符串化:
        sss.join('-') #将一个数组的值用某个字符连接起来,成为一个新的字符串
      长度:
        sss.length #数组的长度
    
    字典:
      dic = {'k1':'v1','k2':'v2}
    

      6、未定义值

    var pp
    undefined
    

      7、null

    null是一个特殊值
        怎么个特殊法呢?
    

       8、循环格式:for/while(){}

    经典格式:
    #============数组============== <script> var names = ['alex','kzg','sam']; for (var i=0;i<names.length;i++){ console.log(i); #循环时获取的是索引 console.log(names[i]); } </script>

    普通格式:
    <script>
    var names = ['alex','kzg','sam'];
    for (var n in names){
    console.log(n); #循环时获取的是索引
    console.log(names[n]);
    }
    </script>

    #===========字典=============
    <script>
    var dic = {'k1':'v1','k2':'v2','k3':'v3'};
    for(var d in dic){
    console.log(d);
    console.log(dic[d]);
    }
    </script>

    // while循环
    while(条件){
        // break;
        // continue;
    }

      

      9、条件语句if(){}else if(){}else{}/switch(){case}

    <script>
            var name = 'li';
            if (name == 'li'){
                console.log('李明');
            }else if(name == 'sun'){
                console.log('孙前')
            }else{
                console.log('明哥')
            }
        </script>


    //switch/case语句
    <script>
    var name = 'li';
    switch(name){
    case 'li':
    console.log('liming');
    break; #必须有,否则三个都会执行
    case 'sun':
    console.log('sunqian');
    break;
    default:
    console.log('qiange');
    break;
    }
    </script>

      10、异常处理

    <script>
            try{
            
            }
            catch(e){  #e是错误的内容,除了python其它语言都有这个词
    
            }finally{
    
            }
        </script>
    

      11、函数:function f_name(){}

    #声名函数
    <script>
    function myfun(arg){
    return 'nnnnoooo';
    };
    console.log(myfun()); #这里可以不传参??
    </script>

    #匿名函数
    <script>
    var myf = function(arg){
    return 'ooookkkk';
    };
    console.log(myf());

    </script>

    #自执行函数(函数)(参数)
    <script>
    (function myfun(arg){
    console.log(arg);
    })('123');
    </script>

      12、对象

        <script>
    //        定义一个对象函数
            function Foo(arg1,arg2){
                this.age1 = arg1;
                this.age2 = arg2;
                this.Func = function(arg){
                    return this.age1 + this.age2 + arg;
                }
            }
    //初始化实例对象
            var obj = new Foo(10,20);
    //运用对象
            var ret = obj.Func(30);
            console.log(ret);
        </script>
    
    结果:60
    

       13、序列化与反序列化

    <script>
            dic = {'k1':'v1','k2':'v2'};
            var st = JSON.stringify(dic); #序列化
            var ob = JSON.parse(st);    #反序列化
            console.log(typeof(ob));
        </script>
    

      

       

      

  • 相关阅读:
    OpenLayers 添加OpenStreetMap(OSM)瓦片层示例
    [转]Net Framework引路蜂地图开发示例
    SVG关注复杂图形的网页绘制技术
    解决Easyui1.3.3 IE8兼容性问题
    Ajax学习教程在线阅读
    判断访问站点的浏览器类型
    修改TOMCAT服务器图标为应用LOGO
    ArcGIS学习推荐基础教程摘录
    Jquery html页面处理基础
    android AppWidget的使用以及利用TimerTask实现widget的定时更新
  • 原文地址:https://www.cnblogs.com/kongzhagen/p/6146133.html
Copyright © 2011-2022 走看看