为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
JavaScript进阶篇_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

JavaScript进阶篇

慕课官方号 页面重构设计
难度入门
时长 8小时55分
  • form中如果name属性和onclick属性同名,

    由于作用域问题,onclick访问的是form的checkAll属性而不是外部的函数。(checkAll()会默认传递一个隐性参数this,此时的this代表的是form表单对象,会优先调用表单的属性,即checkAll,而不是调用window对象的checkAll()方法)
    ---------------------

    查看全部
    0 采集 收起 来源:认识DOM

    2018-12-17

  • 编程练习要点:

    1:获取系统当前时间 

    var mydate = new Date();

    2:获取当前年份

    mydate.getFullYear();

    3:获取当前月份

    mydate.getMonth();

    PS:月份是从0开始算的,所以需要在后面加1

    4:获取当前月份的一天

    mydate.getDate();

    Ps:在这里使用mydate.getDay()是错误的用法,getDay() 返回的是星期,返回的是0-6的数字,0 表示星期天

    mydate.getDate()返回月份的某一天。所指的月份中的某一天,使用本地时间。返回值是 1 ~ 31 之间的一个整数。所以此处用mydate.getDate();

    5:获取当前是星期几

    var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];

    weekday[mydate.getDay()];

    ps:为什么mydate.getDay()作为weekday的下标?

    因为getDay( )获取的值返回的是0-6的数字,这里的0表示星期天,所以正好对应weekday的下标,week[0]="星期日";weekday[1]="星期一";一 一对应。所以mydate.getDay()作为weekday的下标

    6:使用split()将当前字符串分割成字符串数组

    var myarr = str.split(";")//根据设置的字符串规律来设置分隔符

    7:使用for循环将值从数组里一个一个取出来

    注意:for 循环条件中以分号;结束,判断字符长度时是小于<length

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

    {

        document.write(myyarr[i]);

    }


    8: indexOf()用来定位提取数值时,注意要规律性取值,是从冒号后面开始的位置,而不是从第几位开始,这样可以避免人名为三个字时出现错误

    var index = myarr[i].indexOf(":");//根据设置的字符串规律来确定提取字符开始的定位

    9:使用slice()或者substr()将从数组里取出来的值提取分数

    myarr[i].substr( substr(index +1, 2) );

    //index来确定冒号开始的位置,+1向后移一位开始取值,因数组中以分数结尾,默认可取到结尾或取2位数

    10:将获取的分数字符串转换成parseInt(整数型)

    parseInt( myarr[i].substr(index+1, 2) );

    11: sum求和取值

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

    {

    var index = myarr[i].indexOf(":");

    sum += parseInt( myarr[i].substr( index+1, 2) );

    }


    // sum += 意思是赋值 sum= sum + 后面的语句..

    12: 求平均值

    av = sum/myarr.length    //总和除以字符串的总长度数

    13.使用Math里的roundl()函数对所取平均分四舍五入取整,当然也可以Math.ceil()向上取整, Math.floor()向下取整

    Math.round(av);


    查看全部
    2 采集 收起 来源:编程练习

    2018-12-17

  • 计时器setInterval()

    在执行时,从载入页面后每隔指定的时间执行代码。

    语法:

    setInterval(代码,交互时间);

    参数说明:

    1. 代码:要调用的函数或要执行的代码串。

    2. 交互时间:周期性执行或调用表达式之间的时间间隔,以毫秒计(1s=1000ms)。

    返回值:

    一个可以传递给 clearInterval() 从而取消对"代码"的周期性执行的值。


    查看全部
  •   //通过javascript的日期对象来得到当前的日期,并输出。

      var date = new Date();

      var weekday = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"];

      document.write(date.getFullYear()+"年"+date.getMonth()+"月"+date.getDate()+"日 "+weekday[date.getDay()]+"--班级总分为:");

      //成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦

      var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";

      var arr1 = scoreStr.split(";");

      var sss=0;

      for (let arr2 of arr1){

          var arr3 = parseInt(arr2.substring(3,5),10);

          sss=sss+arr3;

      }

      //从数组中将成绩撮出来,然后求和取整,并输出。

      document.write(sss/10+"<br>");


    查看全部
    0 采集 收起 来源:编程练习

    2018-12-17

  • ①首先理解:代码里面有多个“div”的情况,document.getElementsByTagName("div")取得的是所有的“div”组成的一个数组(可理解为所有“div”都装在这个盒子里)

    ②我们想要的是什么?是第一个“div”里面的内容

    数组的“第一”个的代码是“0”(零),所以是document.getElementsByTagName("div")[0]的意思是:将所有“div”装在一个盒子里,拿出排在第一的那个


    查看全部
  • <!DOCTYPE html>
    <html>
     <head>
      <title>浏览器对象</title>  
      <meta http-equiv="Content-Type" content="text/html; charset=gkb"/>   
     </head>
     <body>
      <!--先编写好网页布局-->
      <h2>操作成功</h2>
      <span id="time" type="text"></span>秒后回到主页 <a href="" onclick="goBack()">返回</a>

      <script type="text/javascript">
        var num=5;
        setTimeout(start,1000);
        function start(){
            if(num>0){
                document.getElementById("time").innerHTML=num;
                --num;
                setTimeout(start,1000);
            }else{
                window.open("https://www.imooc.com/","");
            }
            
        }
       //获取显示秒数的元素,通过定时器来更改秒数。

       //通过window的location和history对象来控制网页的跳转。
       function goBack(){
           window.history.back();
       }
       
     </script>
    </body>
    </html>

    总结一下遇到的问题:

    1、HTML不太熟练,input标签可以取得里面的内容,但是有个框,修改后用innerHTML达到了目的。

    2、还是要多练,多写。



    查看全部
    1 采集 收起 来源:编程练习

    2018-12-17

  • 这里不用打分号https://img1.sycdn.imooc.com//5c1710fc0001899b05790453.jpg

    查看全部
    0 采集 收起 来源:window对象

    2018-12-17

  • function count(){

           

        //获取第一个输入框的值

        var a=parseInt(document.getElementById('txt1').value);

    //获取第二个输入框的值

    var b=parseInt(document.getElementById('txt2').value);

    //获取选择框的值

    var c=document.getElementById('select').value;

    //获取通过下拉框来选择的值来改变加减乘除的运算法则

    var d;

    switch(c){

        case '+':

            d= a+b

            break;

        case '-':

            d= a-b

            break;

        case '*':

            d= a*b

            break;

        case '/':

            d= a/b

            break;

    }

        //设置结果输入框的值 

        document.getElementById('fruit').value= d;

       }

    查看全部
    0 采集 收起 来源:编程练习

    2018-12-17

  • 计算加法时出现将两个数当成字符串加起来的问题时;使用parseInt()可以解决;如:

    sum=num1+num2改为:sum=parseInt(num1)+parseInt(num2);

    查看全部
    0 采集 收起 来源:编程练习

    2018-12-16

  • <!DOCTYPE HTML>

    <html>

    <head>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

    <title>函数传参</title>

    <script type="text/JavaScript">

       function add3(x,y,z)                

    {

      sum = x + y +z;

      document.write(`${x},${y},${z}的和为${sum}<br />`);

    }

    add3(5,8,3); 

    add3(7,1,4);

    </script>

    </head>

    <body>

    </body>

    </html>



    查看全部
    0 采集 收起 来源:有参数的函数

    2018-12-16

  • <!DOCTYPE html>

    <html>

    <head>

    <meta charset="UTF-8">

    <title></title>


    </head>

    <body>

    <script type="text/javascript" >

      var infos = 

    [

        ['小A','女',21,'大一'],

    ['小B','男',23,'大三'],

    ['小C','男',24,'大四'],

    ['小D','女',21,'大一'],

    ['小E','女',22,'大四'],

        ['小F','男',21,'大一'],

    ['小G','女',22,'大二'],

    ['小H','女',20,'大三'],


    ['小I','女',20,'大一'],

    ['小J','男',20,'大三']

      ];


    for (var i = infos.length - 1; i >= 0; i--) {

    switch(infos[i][3]){

    case '大一':

    switch(infos[i][1]){

    case '女':

    document.write(infos[i] + '<br />')

    }

    }

    }



    </script>

    </body>

    </html>



    查看全部
    0 采集 收起 来源:编程练习

    2018-12-16

  • 字符串分割str.split()
    查看全部
  • 不熟练
    查看全部
    0 采集 收起 来源:二维数组

    2018-12-15

  • var myarr = new Array();

    new Array(),是个构造方法

    左边是声明的一个用于存储数组的变量,这个命名根据变量的命名规则命名就可以了。

    右边是强制的(是规定的语法),new是一个创建对象的关键字和声明变量的关键字var一样,而Array则表示你要创建一个什么样的对象,如new String()表示你要创建的是一个字符串对象


    查看全部
  • <!DOCTYPE HTML>

    <html>

    <head>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">

    <title>无标题文档</title>

    <script type="text/javascript">

            function GoBack() {

                window.history.back();

            }

           

    </script>

    </head>

     


    <body>

    点击下面的锚点链接,添加历史列表项:

        

        <br />

        <a href="#target1">第一个锚点</a>

        <a name="target1"></a>

        <br />

        <a href="#target2">第二个锚点</a>

        <a name="target2"></a>

        <br /><br />

        使用下面按钮,实现返回前一个页面:

        <form>

           <input type="button"  value="返回前一个页面" onclick="GoBack();" />        

        </form>

    </body>

    </html>


    查看全部

举报

0/150
提交
取消
课程须知
你需要具备HTML、css基础知识,建议同学们也可以想学习下js入门篇,快速认识js,熟悉js基本语法,更加快速入手进阶篇!
老师告诉你能学到什么?
通过JavaScript学习,掌握基本语法,制作简单交互式页面
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!