前端第十六天

1.    数字去重

        <script type="text/javascript">

        var aRr = [1,3,4,1,6,9,1,2,5,3,1,6,5,4,4];

        var aRr2 = [];

        for(var i=0; i<aRr.length; i++){

        //判断元素第一次出现的位置,恰好是当前索引时,就将元素放入新数组

        if(aRr.indexOf(aRr[i]) == i){

        aRr2.push(aRr[i]);

        }

        }

        alert(aRr2);//1,3,4,6,9,2,5

        </script>

2.    字符串常用方法

        字符串切断转成数组

        var sTr = '2018-06-20';

        var aRr = sTr.split('-');

        // alert(aRr);//2018,06,20

        // console.log(aRr);

        var aRr2 = sTr.split('');

        // console.log(aRr2);

        /*实际上就是修改了<title>标签的内容*/

        // document.title = aRr2;

        var sTr2 = '#div1';

        var sTr3 = '.div1';

        获取指定索引的字符

            var sTr4 = sTr2.charAt(0);

            if(sTr4 == '#'){

            // alert('id选择器');

            }

        查看子串第一次出现的位置

            var sTr5 = 'Microsoft Yahei';

            var num = sTr5.indexOf('Yahei');

            // alert(num);//10

            var num2 = sTr5.indexOf('xihei');

            // alert(num2);//没有找到就弹出-1

            /*substring截取子串*/

            //从10开始,截到15(包括开始位置,不包括结束位置)

            // var sTr6 = sTr5.substring(10,15);//Yahei

            //从10开始截取到末尾

            var sTr6 = sTr5.substring(10);//Yahei

            // alert(sTr6);

        全部转为大写字母

            // alert(sTr6.toUpperCase());//YAHEI

        全部转为小写字母

            alert(sTr6.toLowerCase());//yahei

3.    字符串反转

        1、split字符串转成数

        2、reverse数组反转

        3、join数组转成字符串

        <script type="text/javascript">

        var sTr = "123asdf79888asdfe21";

        //1、split字符串转成数组

        //2、reverse数组反转

        //3、join数组转成字符串

        var sTr2 = sTr.split('').reverse().join('');

        alert(sTr2);//12efdsa88897fdsa321

        </script>

4.    定时器弹框

        setTimeout 只执行一次的定时器

        clearTimeout 关闭只执行一次的定时器

        setInterval 反复执行的定时器

        clearInterval 关闭反复执行的定时器

        <!DOCTYPE html>

        <html lang="en">

        <head>

        <meta charset="UTF-8">

        <title>定时器弹框</title>

        <style type="text/css">

        .pop{

        width: 400px;

        height: 300px;

        background-color: #fff;

        border: 1px solid #000;

        /*固定定位*/

        position: fixed;

        /*左上角位于页面中心*/

        left: 50%;

        top: 50%;

        /*让div向左偏移半个宽度、向上偏移半个高度,使div位于页面中心*/

        margin-left: -200px;

        margin-top: -150px;

        /*弹窗在最上面*/

        z-index: 9999;

        }

        /*遮罩样式*/

        .mask{

        position: fixed;

        width: 100%;

        height: 100%;

        background-color: #000;

        left: 0;

        top: 0;

        /*设置透明度30%*/

        opacity: 0.3;

        filter: alpha(opacity=30);/*兼容IE6、7、8*/

        /*遮罩在弹窗的下面,在网页所有内容的上面 */

        z-index: 9990;

        }

        .pop_con{

        display: none;/*默认不显示,用定时器显示*/

        }

        </style>

        <script type="text/javascript">

        window.onload = function(){

        var oPop = document.getElementById('pop');

        var oShut = document.getElementById('shutOff');

        /*setTimeout(showPop, 3000);//开启定时器,3秒后调用函数showPop()弹框

        function showPop(){

        oPop.style.display = 'block';//显示弹框和遮罩

        }*/

        //开启定时器的简写方式:调用匿名函数

        setTimeout(function(){

        oPop.style.display = 'block';

        }, 3000);

        oShut.onclick = function(){

        oPop.style.display = 'none';//关闭弹框和遮罩

        }

        }

        </script>

        </head>

        <body>

        <h1>首页标题</h1>

        <p>页面内容</p>

        <a href="http://www.baidu.com">百度网</a>

        <div class="pop_con" id="pop">

        <div class="pop">

        <h3>提示信息!</h3>

        <a href="#" id="shutOff">关闭</a>

        </div>

        <div class="mask"></div>

        </div>

        </body>

        </html>

5.    定时器的基本用法

        <script type="text/javascript">

        //单次定时器

        var timer = setTimeout(function(){

        alert('hello!');

        }, 3000);

        //清除单次定时器

        clearTimeout(timer);

        //反复循环定时器

        var timer2 = setInterval(function(){

        alert('hi~~~');

        }, 2000);

        //清除反复循环定时器

        clearInterval(timer2);

        </script>

6.    定时器动画

        <!DOCTYPE html>

        <html>

        <head>

        <meta charset="UTF-8">

        <title>定时器动画</title>

        <style type="text/css">

        .box{

        width: 100px;

        height: 100px;

        background-color: gold;

        position: fixed;

        left: 20px;

        top: 20px;

        }

        </style>

        <script type="text/javascript">

        window.onload = function(){

        var oBox = document.getElementById('box');

        var left = 20;

        //反复循环定时器,每30毫秒修改一次盒子的left值

        var timer = setInterval(function(){

        left += 2;

        oBox.style.left = left + 'px';

        //当left值大于700时停止动画(清除定时器)

        if(left > 700){

        clearInterval(timer);

        }

        },30);

        }

        </script>

        </head>

        <body>

        <div class="box" id="box"></div>

        </body>

        </html>

7.    时钟

        <!DOCTYPE html>

        <html lang="en">

        <head>

        <meta charset="UTF-8">

        <title>时钟</title>

        <style type="text/css">

        </style>

        <script type="text/javascript">

        window.onload = function(){

        var oBox = document.getElementById('box');

        function timeGo(){

        var now = new Date();

        // alert(now);//弹出美式时间:Wed Jun 20 2018 15:27:13 GMT+0800 (中国标准时间)

        var year = now.getFullYear();//2018年

        var month = now.getMonth() + 1;//6月弹出5//范围0-11

        var date = now.getDate();//20号

        var week = now.getDay();//3//星期几,西半球时间,范围0-6,星期日为一周的第一天,为0

        var hour = now.getHours();

        var minute = now.getMinutes();

        var second = now.getSeconds();

        // alert(hour + ":" + minute + ":" + second);//15:33:9

        oBox.innerHTML = '当前时间是:' + year + '年' + toDouble(month) + '月' + toDouble(date) + '日 ' + toWeek(week) + ' ' + toDouble(hour) + ":" + toDouble(minute) + ":" + toDouble(second);

        }

        timeGo();

        setInterval(timeGo, 1000);

        }

        //此函数将星期的数字转为汉字表示

        function toWeek(num){

        switch(num){

        case 0:

        return '星期天';

        break;

        case 1:

        return '星期一';

        break;

        case 2:

        return '星期二';

        break;

        case 3:

        return '星期三';

        break;

        case 4:

        return '星期四';

        break;

        case 5:

        return '星期五';

        break;

        case 6:

        return '星期六';

        break;

        }

        }

        //此函数将不足两位的数字前面补0

        function toDouble(num){

        if(num < 10){

        return '0' + num;

        }else{

        return num;

        }

        }

        </script>

        </head>

        <body>

        <div id="box"></div>

        </body>

        </html>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容