• JavaScript自主学习进度(2)


    一、关键特性

        JavaScript 的 循环语句 if……else……和for 循环、while……循环、do……while……循环、switch case语句和continue、break用法跟ecplice的相同。JavaScript跟python一样,需要创建函数、方法。此处不做赘述。

    二、Array、String、Date、Math对象

    1、对象概念:在JavaScript中对象是拥有属性和方法的数据。

    JSON它是纯数据格式,只包含属性没有方法,简单的例子:

     1 { 2 "name": "zhangsan", 3 "age": 18, 4 "gender": "male" 5 } 

    Array对象:

    属性:length 获取数组长度

    方法:concat()连接两个或多个数组,并返回结果

               join()将数组转换成字符串

               pop()删除并返回数组最后一个元素

               push()在数组末尾加一个或更多元素,并返回新的长度

               reverse()颠倒数组顺序

               sort()将数组进行排序

               toString()把数组转换成字符串并返回结果

    var arr1=[1,2,3];
    var arr2=[4,5,6];
    arr1.length; //结果等于3
    arr3.concat(arr1,arr2); //结果返回[1,2,3,4,5,6]

    String对象:

    属性:length获取字符串长度

    方法:charAt()获取指定位置处字符

    var string='You are so excellent!';
    document.write(str.charAt(6)); //返回‘e’

             concat()连接字符串

              indexof()检索字符串

              toString()返回字符串

               toLowerCase()/toUpperCase()返回字符串的小写/大写形式

               replace()替换某段字符串

               split()分割字符串为字符串数组

    Date对象:

    方法:Date()返回当日日期和时间

               getDate()返回一个月中的某天

               getDay()返回一周的某天

               getMonth()返回月份

               getFullYea()返回四位数字的年份

               getHours()返回小时

               getMinutes()返回分钟

               getSeconds()返回秒

    Math对象:

    方法:abs()返回绝对值

               round(x)返回x四舍五入后的值

               sqrt()返回x的平方根

               ceil(x)返回大于等于x的最小整数

               floor(x)返回小于等于x的最大整数

                pow(n,m)返回n的m次幂

                max(a,b)/min(a,b)返回a,b中的最大/最小值

                random()返回0到1间的一个随机数

    三、创建对象
    1、对象字面量来创建:

    var student = {
      name: 'zhangsan',
      age: 18,
      gender: 'male',
      sayHi: function () {
        console.log('hi,my name is ' + this.name);
      },
    };

    2、new Object()来创建:

    var student = new Object();
    (student.name = 'zhangsan'),
      (student.age = 18),
      (student.gender = 'male'),
      (student.sayHi = function () {
        console.log('hi,my name is ' + this.name);
      });

    3、工厂函数创建:

    function createStudent(name, age, gender) {
      var student = new Object();
      student.name = name;
      student.age = age;
      student.gender = gender;
      student.sayHi = function () {
        console.log('hi,my name is ' + this.name);
      };
      return student;
    }
    var s1 = createStudent('zhangsan', 18, 'male');

    4、自定义构造函数

    function Student(name, age, gender) {
      this.name = name;
      this.age = age;
      this.gender = gender;
      this.sayHi = function () {
        console.log('hi,my name is ' + this.name);
      };
    }
    var s1 = new Student('zhangsan', 18, 'male');

    实例练习:


    (1)写一个函数实现输出当前的准确时间,格式为yyyy/MM/dd HH:mm:ss

     1 <html>
     2     <head>
     3         <meta charset='UTF-8'/>
     4         <title>
     5             今天的准确时间
     6         </title>
     7     </head>
     8     <body>
     9         <script>
    10             function formatDate(time){
    11                 if(!time instanceof Date){
    12                     return;
    13                 }
    14                 var year=time.getFullYear(),
    15                     month=time.getMonth(),
    16                     day=time.getDate(),
    17                     hour=time.getHours(),
    18                     minute=time.getMinutes(),
    19                     second=time.getSeconds();
    20                 month=month<10?'0'+month:month;
    21                 day=day<10?'0'+day:day;
    22                 hour=hour<10?'0'+hour:hour;
    23                 minute=minute<10?'0'+minute:minute;
    24                 second=second<10?'0'+second:second;
    25                 return (
    26                     year+'/'+month+'/'+day+' '+hour+':'+minute+':'+second);
    27             }
    28             document.write(formatDate(new Date()));
    29         </script>
    30     </body>
    31 </html>

    (2)写一个函数去掉给定数组中重复发元素,如array=['x','c','a','b','c','b','c'];

     1 <!DOCTYPE html>
     2 <html>
     3   <head>
     4     <meta charset="UTF-8" />
     5     <title></title>
     6   </head>
     7 
     8   <body>
     9     <script type="text/javascript">
    10       var array = ['x', 'c', 'a', 'b', 'c', 'b', 'c'];
    11 
    12       function clearArray() {
    13         var o = {};
    14         for (var i = 0; i < array.length; i++) {
    15           var item = array[i];
    16           if (o[item]) {
    17             o[item]++;
    18           } else {
    19             o[item] = 1;
    20           }
    21         }
    22         var tmpArray = [];
    23         for (var key in o) {
    24           if (o[key] == 1) {
    25             tmpArray.push(key);
    26           } else {
    27             if (tmpArray.indexOf(key) == -1) {
    28               tmpArray.push(key);
    29             }
    30           }
    31         }
    32         return tmpArray;
    33       }
    34 
    35       console.log(clearArray(array));
    36     </script>
    37   </body>
    38 </html>
  • 相关阅读:
    Python 安装Twisted 提示python version 2.7 required,which was not found in the registry
    Openfire Strophe开发中文乱码问题
    css div 垂直居中
    How to create custom methods for use in spring security expression language annotations
    How to check “hasRole” in Java Code with Spring Security?
    Android 显示/隐藏 应用图标
    Android 当媒体变更后,通知其他应用重新扫描
    文件上传那些事儿
    专题:点滴Javascript
    主流动画实现方式总结
  • 原文地址:https://www.cnblogs.com/2640335699qqcom/p/15450169.html
Copyright © 2020-2023  润新知