美文网首页
2018-07-28 学习总结

2018-07-28 学习总结

作者: 小本YuDL | 来源:发表于2018-07-28 10:08 被阅读6次

一,JS计时事件

JS计时事件主要有两个方法:

  • setTimeout 未来某时执行代码
  • clearTimeout 取消setTimeout()
  • 1000 毫秒等于一秒

1.setTimeout

var time = setTimeout("JS语句",毫秒);
毫秒是指从现在起多少秒以后执行设定语句;
5s后显示弹出框
<input type="button" value="计时" onClick="timedMsg()">
<script>
    function timedMsg() {
        var t=setTimeout("alert('5 seconds!')",5000)
    }
</script>
计时器(无限循环):点击计时开始按钮,时间会从0开始不断的往上加。
关键:计时函数timecount的递归调用,以及count的自增;
<form method="get">
   <input type="button" value="点击开始计时" onclick="timecount()" id="btn">
   <input id= "tst" type="text">
</form>
<script>
    var time;
    var count = 0;
    function timecount(){
        document.getElementById("tst").value = count;
        count = count +1;
        time = setTimeout("timecount()",1000);
    }
</script>
无限循环计时器
开始计时后

2.clearTimeout()

可以暂停的计时器,点击暂停后计时停止;
关键:在无限循环的计时器基础上利用clearTimeout函数暂停计时
<form method="get">
  <input type="button" value="点击开始计时" onclick="timecount()" id="btn">
  <input id= "tst" type="text">
  <input type="button" value="暂停计时" onclick="stopcount()" >
</form>
<script>
    var time;
    var count = 0;
    function timecount(){
        document.getElementById("tst").value = count;
        count = count +1;
        time = setTimeout("timecount()",1000);
    }
   function stopcount(){
       clearTimeout(time);
       document.getElementById("btn").value= "继续计时"
   }
</script>

开始计时前
开始计时
点击暂停后可继续计时

二,JS Cookies

cookie 用来识别用户。
有关cookie的例子:

  • 名字cookie:当首次访问页面时,可能会注册,包括用户名。用户名会存储于 cookie 中。下次登录时,用户名会从 cookie 中取回,我们就会收到类似 "Welcome John Doe!" 的欢迎词。
  • 密码cookie:当首次访问页面时,可能会注册,包括设置密码,密码也会存储在cookies中,下次登录,密码会从cookie中取回。
  • 日期cookie:当首次访问你的网站时,当前的日期可存储于 cookie 中。当下次访问再网站时,日期会cookie 中取回。我们就会收到一条消息:"Your last visit was on Tuesday August 11, 2017!"。。

创建和存储 cookie的代码真的好长o(╥﹏╥)o,无力看下去。日后补上吧
<body onLoad="checkCookie()">
<script type="text/javascript">
function getCookie(c_name)
{
if (document.cookie.length>0)
  {
    c_start=document.cookie.indexOf(c_name + "=")
    if (c_start!=-1) { 
        c_start=c_start + c_name.length+1 ;
        c_end=document.cookie.indexOf(";",c_start);
        if (c_end==-1) c_end=document.cookie.length
            return unescape(document.cookie.substring(c_start,c_end));
    } 
  }
      return "";
}

function setCookie(c_name,value,expiredays)
{
    var exdate=new Date();
    exdate.setDate(exdate.getDate()+expiredays);
    document.cookie=c_name+ "=" +escape(value)+
    ((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
}

function checkCookie()
{
    username=getCookie('username');
    if (username!=null && username!=""){
        alert('Welcome again '+username+'!');
    }
    else {
      username=prompt('Please enter your name:',"");
      if (username!=null && username!=""){
            setCookie('username',username,365);
       }
  }
}
</script>

</body>
</html>

3.构造函数并创建对象

1.构造函数:this 指向被此 构造函数 创建出来的 对象

function person(){
   this.name = "小明";
   this.age = 20;
   this.score = 80;
}

2.构造函数并创建对象:要使用 new关键字去调用构造函数,并且this指向这个新对象

function person(){
   this.name = "小明";
   this.age = 20;
   this.score = 80;
}
var persons = new person();

3.向构造函数中传入参数: 通过使用 参数 来为 wheels ,seats ,engines 属性进行赋值

function person(name, age,score){
   this.name = name;
   this.age = age;
   this.score = score;
}
var persons = new person("小明",20,80);

4.构造函数私有属性与私有方法:
我们使用了 this 指向当前(将要被创建的)对象中的 公有属性
创建 私有属性私有方法,它们两个在对象外部是不可访问的。
方法:构造函数 中,使用我 var去创建变量,来替代我们使用 this 创建 属性 。

举例:freeCodeCamp上的一道题:

修改 Bike 的 构造函数 ,使它有一个名为 gear 的 私有属性 ,
还有两个公有方法,叫做 getGear 和 setGear ,这两个方法用来获得和设置 gear 的值。
myBike.gear 在外部访问时,应该保持 undefined ,即外部访问不到私有属性。
当调用 myBike.setGear(4)时,myBike.getGear() 应该返回 4 。
当调用 myBike.setGear(3) 时,myBike.getGear() 应该返回 3 。
当调用 myBike.setGear(1) 时,myBike.getGear() 应该返回 1

var Car = function() {
  // this is a private variable
  var speed = 10;

  // these are public methods
  this.accelerate = function(change) {
    speed += change;
  };

  this.decelerate = function() {
    speed -= 5;
  };

  this.getSpeed = function() {
    return speed;
  };
};

var Bike = function() {

  // 只能在这一行下面写代码
  var gear = 5;
  this.getGear = function() {
    return gear;
  };
  this.setGear = function(val) {
    gear = val; 
  };

};

var myCar = new Car();
var myBike = new Bike();

相关文章

  • 2018-07-28 学习总结

    一,JS计时事件 JS计时事件主要有两个方法: setTimeout 未来某时执行代码 clearTimeou...

  • 2018-07-28

    2018-07-28 事件:今天做了两个个案。 感受:悲伤,心疼,平静。 想法:用自己刚学到的完形做,练习,总结,...

  • 全员参与经营

    2018-07-28 (稻盛哲学学习会)打卡第96天 姓名:祝新华 部门:业务部 组别:待定 【知~学习】 经...

  • 全员参与经营

    2018-07-28 (稻盛哲学学习会)打卡第129天 姓名:王燕君 部门:分水碶 组别:利他三组 【知~学习】 ...

  • 2018-07-28

    2018-07-28 【日精进打卡第106天】 姓名:李光明 公司:宁波万尚进出口有限公司 【知~学习】 诵读《京...

  • 2018-07-29

    2018-07-28 姓名:崔丽萍 公司:宁波华光 【日精进打卡第7天】 【知~学习】 《六项精进》背诵1遍 共9...

  • Oracle数据库 PL/SQL编程基础——PL/SQL简介

    课程教师:李兴华 课程学习者:阳光罗诺 日期:2018-07-28 知识点: 1、 了解PL/SQL的主要特点 2...

  • 2018-07-28

    2018-07-28 承迪柴迪迪 公司:宁波市镇海承迪文具有限公司 【日精进打卡第109天】 一:【知~学习】 《...

  • 《就是要你懂swoole》-- 编程须知

    title: 《就是要你懂swoole》-- 编程须知date: 2018-07-28 11:41:13tags:...

  • 2018-07-28晚间总结

    21天养成健康生活习惯,做到“榜样、陪伴、鼓励、坚持”,和大家一起养成好习惯,成就更健康、更好的自己! 每一次小坚...

网友评论

      本文标题:2018-07-28 学习总结

      本文链接:https://www.haomeiwen.com/subject/lyngmftx.html