zoukankan      html  css  js  c++  java
  • JavaWeb的学习--第四天 javascript02

    1、js的String对象
    ** 创建String对象
    *** var str = "abc";

    ** 方法和属性(文档)
    *** 属性 length:字符串的长度

    *** 方法
    (1)与html相关的方法
    - bold():加粗
    - fontcolor(): 设置字符串的颜色
    - fontsize(): 设置字体的大小

    - link(): 将字符串显示成超链接
    **** str4.link("hello.html")

    - sub() sup(): 下标和上标

    (2)与java相似的方法
    - concat(): 连接字符串
    ** //concat方法
    var str1 = "abc";
    var str2 = "dfg";
    document.write(str1.concat(str2));

    - charAt():返回指定指定位置的字符串
    ** var str3 = "abcdefg";
    document.write(str3.charAt(20)); //字符位置不存在,返回空字符串

    - indexOf(): 返回字符串位置
    ** var str4 = "poiuyt";
    document.write(str4.indexOf("w")); //字符不存在,返回-1

    - split():切分字符串,成数组
    ** var str5 = "a-b-c-d";
    var arr1 = str5.split("-");
    document.write("length: "+arr1.length);

    - replace() : 替换字符串
    * 传递两个参数:
    -- 第一个参数是原始字符
    -- 要替换成的字符
    * var str6 = "abcd";
    document.write(str6);
    document.write("<br/>");
    document.write(str6.replace("a","Q"));

    - substr()和substring()
    * var str7 = "abcdefghuiop";
    //document.write(str7.substr(5,5)); //fghui 从第五位开始,向后截取五个字符
    *** 从第几位开始,向后截取几位

    document.write("<br/>");
    document.write(str7.substring(3,5)); //de 从第几位开始到第几位结束 [3,5)
    *** 从第几位开始,到第几位结束,但是不包含最后哪一位

    2、js的Array对象
    ** 创建数组(三种)
    - var arr1 = [1,2,3];
    - var arr2 = new Array(3); //长度是3
    - var arr3 = new Array(1,2,3); //数组中的元素是1 2 3

    - var arr = []; //创建一个空数组

    **属性length:查看数组的长度

    **方法

    -concat()方法:数组的连接

    -join()方法:根据指定字符分割数组

    -push()方法:向数组末尾添加元素,返回数组的新的长度

    **如果添加的是一个数组,这个时候把数组当做一个整体字符串添加进去
    -pop()方法:
    删除最后一个元素,返回删除的那个元素

    -reverse()方法:颠倒数组中元素的顺序

    代码:

     1 //length:查看数组的长度
     2 var arr1 = [1, 2, 3];
     3 document.write(arr1.length);
     4 
     5 //concat()方法:数组的连接
     6 document.write("<hr/>");
     7 var arr2 = [1, 2, 3];
     8 var arr3 = [4, 5, 6];
     9 document.write(arr2.concat(arr3));
    10 
    11 //join()方法:根据指定字符分割数组
    12 document.write("<hr/>");
    13 var arr4 = new Array(3);
    14 arr4[0] = "a";
    15 arr4[1] = "b";
    16 arr4[2] = "c";
    17 
    18 document.write(arr4);
    19 document.write("<br/>");
    20 document.write(arr4.join("-"));
    21 
    22 //push()方法:向数组末尾添加元素,返回数组的新的长度
    23 //如果添加的是一个数组,这个时候把数组当做一个整体字符串添加进去
    24 document.write("<hr/>");
    25 var arr5 = new Array(3);
    26 arr5[0] = "tom";
    27 arr5[1] = "jack";
    28 arr5[2] = "lucy";
    29 document.write("old length:" + arr5.length);
    30 
    31 document.write("<br/>");
    32 document.write("new length:" + arr5.push("wangwu"));
    33 document.write("<br/>");
    34 document.write("new array:" + arr5);
    35 
    36 document.write("<hr/>");
    37 var arr6 = ["aaa", "bbb", "ccc"];
    38 var arr7 = ["www", "qqq"];
    39 
    40 document.write("old array:" + arr6);
    41 document.write("<br/>");
    42 document.write("new length:" + arr6.push(arr7));
    43 document.write("<br/>");
    44 document.write("new array:" + arr6);
    45 for(var i=0;i<arr6.length;i++) {
    46     //alert(arr6[i]);
    47 }
    48 
    49 //pop()方法:删除最后一个元素,返回删除的那个元素
    50 document.write("<hr/>");
    51 var arr8 = ["wangwu", "lisi", "zhangsan"];
    52 document.write("old array:" + arr8);
    53 document.write("<br/>");
    54 
    55 document.write("return:" + arr8.pop());
    56 document.write("<br/>");
    57 document.write("new array:" + arr8);
    58 
    59 //reverse()方法:颠倒数组中元素的顺序
    60 document.write("<hr/>");
    61 var arr9 = ["wangwu", "lisi", "zhangsan", "zhaoliu"];
    62 document.write("old array:" + arr9);
    63 document.write("<br/>");
    64 document.write("new array:" + arr9.reverse());

    3、js的Date对象
    ** 在java里面获取当前时间
    Date date = new Date();
    //格式化
    //toLocaleString() //2015年4月17日 11:17:12

    ** js里面获取当前时间
    var date = new Date();
    //获取当前时间
    var date = new Date();
    document.write(date); // Fri Apr 17 10:47:46 UTC+0800 2015

    //转换成习惯的格式
    document.write("<hr/>");
    document.write(date.toLocaleString());

    ** 获取当前的年方法
    getFullYear():得到当前的年
    **** document.write("year: "+date.getFullYear());

    ** 获取当前的月方法
    getMonth():获取当前的月
    *** 返回的是 0-11月,如果想要得到准确的值,加1
    **** var date1 = date.getMonth()+1;
    document.write("month: "+date1);

    ** 获取当前的星期
    getDay():星期,返回的是 (0 ~ 6)
    ** 外国朋友,把星期日作为一周的第一天,星期日返回的是 0
    而星期一到星期六 返回的是 1-6
    ** document.write("week: "+date.getDay());

    ** 获取当前的日
    getDate():得到当前的天 1-31
    ** document.write("day: "+date.getDate());

    ** 获取当前的小时
    getHours():获取小时
    ** document.write("hour: "+date.getHours());

    ** 获取当前的分钟
    getMinutes():分钟
    ** document.write("minute: "+date.getMinutes());

    ** 获取当前的秒
    getSeconds(): 秒
    ** document.write("second: "+date.getSeconds());

    ** 获取毫秒数
    getTime()
    返回的是1970 1 1 至今的毫秒数

    ** 应用场景:
    *** 使用毫秒数处理缓存的效果(不有缓存)
    http://www.baidu.com?毫秒数

    4、js的Math对象
    * 数学的运算
    ** 里面的都是静态方法,使用可以直接使用 Math.方法()

    ** ceil(x): 向上舍入

    ** floor(x):向下舍入

    ** round(x):四舍五入

    ** random():得到随机数(伪随机数)
    - 得到0-9的随机数
    Math.random()*10
    Math.floor(Math.random()*10));

    ** x的y次方pow(x,y);
    document.write("<br/>");
    document.write(Math.pow(2,5));


    5、js的全局函数
    * 由于不属于任何一个对象,直接写名称使用

    ** eval() : 执行js代码(如果字符串是一个js代码,使用方法直接执行)
    **** var str = "alert('1234');";
    //alert(str);
    eval(str);

    ** encodeURI() :对字符进行编码
    - %E6%B5%8B%E8%AF%95%E4%B8%AD%E6%96%87aaa1234

    decodeURI() :对字符进行解码

    encodeURIComponent() 和 decodeURIComponent()

    ** isNaN():判断当前字符串是否是数字
    -- var str2 = "aaaa";
    alert(isNaN(str2));
    *** 如果是数字,返回false
    *** 如果不是数字,返回true

    ** parseInt():类型转换
    ** var str3 = "123";
    document.write(parseInt(str3)+1);

    6、js的函数的重载
    ** 什么是重载?方法名相同,参数不同

    ** js的重载是否存在? 不存在
    ** 调用最后一个方法
    ** 把传递的参数保存到 arguments数组里面

    ** js里面是否存在重载?(面试题目)
    (1)js里面不存在重载。
    (2)但是可以通过其他方式模拟重载的效果 (通过aruguments数组来实现)

     function add1() {
    //比如传递的是两个参数
        if(arguments.length == 2) {
            return arguments[0]+arguments[1];
        } else if (arguments.length == 3) {
                return arguments[0]+arguments[1]+arguments[2];
            } else if (arguments.length == 4) {
                return arguments[0]+arguments[1]+arguments[2]+arguments[3];
            } else {
        return 0;
        }
    }        
  • 相关阅读:
    【prufer编码】BZOJ1430 小猴打架
    【费马小定理】BZOJ3260 跳
    【欧拉函数】BZOJ2705: [SDOI2012]Longge的问题
    【卡特兰数】BZOJ1485: [HNOI2009]有趣的数列
    【缩点+拓扑判链】POJ2762 Going from u to v or from v to u?
    【Floyd】BZOJ1491: [NOI2007]社交网络
    【转】对信息学竞赛中调试方法的建议
    【建图+拓扑判环】BZOJ3953: [WF2013]Self-Assembly
    【dfs判负环】BZOJ1489: [HNOI2009]最小圈
    【二分+最小树形图】UVA11865 比赛网络
  • 原文地址:https://www.cnblogs.com/guodong-wang/p/6419579.html
Copyright © 2011-2022 走看看