zoukankan      html  css  js  c++  java
  • js — 对象

    1. 字符串和数值之间转换

    1.字符串转数值

    var str = '123.0000111';
    console.log(parseInt(str));  //转整数
    console.log(typeof parseInt(str));
    console.log(parseFloat(str)); //转浮点型
    console.log(typeof parseFloat(str));
    console.log(Number(str));
    

    2.数值转字符串

    var num  = 1233.006;
    // 强制类型转换
    console.log(String(num));
    console.log(num.toString());
    // 隐式转换
    console.log(''.concat(num));
    // toFixed()方法会按照指定的小数位返回数值的字符串 四舍五入
    console.log(num.toFixed(2));
    

    2. 对象(object)

    2.1 对象的创建方式

    1.使用对象字面量创建方式。

    对象字面量是对象定义的一种简写形式,目的在于简化创建包含大量属性的对象的过程。

    var obj = {};
    obj.name = 'mjj';
    obj.fav = function(){
        //obj
        console.log(this); // this指向的是当前的对象obj
    }
    obj.fav();
    
     //点语法 set 和get
    console.log(obj.name);  //给obj.name重新赋值 或 获取obj.name值
    

    2.使用new操作符后跟Object构造函数

    var obj2 = new Object();
    console.log(obj2);
    obj2.name = 'wusir';
    
    new Array();  //构造数组
    new String();  //构造字符串
    new Number();  //构造数字
    
    //ES5中 使用构造函数来创建对象
    function Point(x, y) {
      this.x = x;
      this.y = y;
    }
    
    Point.prototype.toString = function () {
      return '(' + this.x + ', ' + this.y + ')';
    };
    
    var p = new Point(1, 2);
    
    //es6用class来创建对象
    class Person{
        constructor(x,y){
            this.x = x;
            this.y = y
        }
        toString(){
            
        }
        
    }
    var p = new Person();
    

    2.2 访问属性的方法

    1.点语法(推荐使用)

    var person = {
        "name" : 'jack';
        "age" : 28,
        "fav" : function(){
            console.log('泡妹子');
        }
    }
    person.name; //jack
    person.fav();//泡妹子
    

    2.括号表示法

    person['name']; //相当于person.name;
    

    3. 日期对象

    3.1 Date对象的方法

    要创建一个日期对象,使用 new 操作符和 Date 构造函数即可

    var date = new Date();
        console.log(date);  //打印date对象
        console.log(Date()); //获取本地当前时间的日期和时间
        console.log(date.getDate());  //获取本地当前时间的日期(1-31)
        console.log(date.getMonth()+1); //获取本地当前时间的月份(0-11)
        console.log(date.getFullYear()); //获取本地当前时间的年份(4位数字)
        console.log(date.getDay());  //获取本地当前时间是星期几(0-6)
        console.log(date.getHours());  //获取本地当前时间小时数(0-23)
        console.log(date.getMinutes()); //获取本地当前时间分钟(0-59)
        console.log(date.getSeconds()); //获取本地当前时间秒数(0-59)
    
    var date = new Date();
    var weeks = ['星期天','星期一','星期二','星期三','星期四','星期五','星期六'];
    console.log(weeks[date.getDay()]);
    var day = weeks[date.getDay()];
    document.write(`<a href="#">${day}</a>`);
    

    3.2 日期格式化方法

    Date 类型还有一些专门用于将日期格式化为字符串的方法,这些方法如下。

    • toLocaleString()——以特定于实现的格式显示年、月、日和时、分、秒

      var date = new Date();console.log(date.toLocaleString());  //"2019/6/4 下午4:00:32"
      
    • toDateString()——以特定于实现的格式显示星期几、月、日和年;

      var date = new Date();
      console.log(date.toDateString()); //"Tue Jun 04 2019"
      
    • toTimeString()——以特定于实现的格式显示时、分、秒和时区;

      var date = new Date();
      console.log(date.toTimeString()); //"16:00:32 GMT+0800 (中国标准时间)"
      
    • toLocaleDateString()——以特定于地区的格式显示年、月、日;

      var date = new Date();
      console.log(date.toLocaleDateString()); //"2019/6/4"
      
    • toLocaleTimeString()——以特定于实现的格式显示时、分、秒;

      var date = new Date();
      console.log(date.toLocaleTimeString());  //"下午4:00:32"
      
    • toUTCString()——以特定于实现的格式完整的 UTC 日期。

      var date = new Date();
      console.log(date.toUTCString());  //"Tue, 04 Jun 2019 08:00:32 GMT"
      

    3.3 数字时钟案例

    var timeObj = document.getElementById('time');
    console.log(time);
    
    function getNowTime() {
        var time = new Date();
        var hour = time.getHours();
        var minute = time.getMinutes();
        var second = time.getSeconds();
        var temp = "" + ((hour > 12) ? hour - 12 : hour);
        if (hour == 0) {
            temp = "12";
        }
        temp += ((minute < 10) ? ":0" : ":") + minute;
        temp += ((second < 10) ? ":0" : ":") + second;
        temp += (hour >= 12) ? " P.M." : " A.M.";
        timeObj.innerText = temp;
    }
    
    setInterval(getNowTime, 20)
    

    4. 数学Math对象

    4.1 Math 对象的属性

    Math 对象包含的属性大都是数学计算中可能会用到的一些特殊值。下表列出了这些属性

    属性 说明
    Math.E 自然对数的底数,即常量e的值
    Math.LN10 10的自然对数 ln(10)
    Math.LN2 2的自然对数
    Math.LOG2E 以2为底e的对数
    Math.LOG10E 以10为底e的对数
    Math.PI π的值
    Math.SQRT1_2 1/2的平方根(即2的平方根的倒数)
    Math.SQRT2 2的平方根

    4.2 min()和 max()方法

    min() 方法用于确定一组数值中的最小值

    max() 方法用于确定一组数值中的最大值

    var max = Math.max(3, 54, 32, 16);
    alert(max);    //54
    var min = Math.min(3, 54, 32, 16);
    alert(min);    //3
    
    // 可以用于找到数组中最大或最小值,使用apply()方法
    var values = [1,2,36,23,43,3,41];
    var max = Math.max.apply(null, values);
    console.log(max);
    

    4.3 舍入方法

    将小数值舍入为整数的几个方法:

    • Math.ceil() 执行向上舍入,即它总是将数值向上舍入为最接近的整数;
    • Math.floor() 行向下舍入,即它总是将数值向下舍入为最接近的整数;
    • Math.round() 执行标准舍入,即它总是将数值四舍五入为最接近的整数
    var num = 25.7;
    var num2 = 25.2;
    alert(Math.ceil(num));//26  天花板函数
    alert(Math.floor(num));//25  地板函数
    alert(Math.round(num));//26
    alert(Math.round(num2));//25
    

    4.4 random()方法

    Math.random() 方法返回大于等于 0 小于 1 的一个随机数(获取0到1之间的数)

    // 获取min到max的范围的随机整数
    function random(min,max) {
        return min+Math.floor(Math.random()*(max-min))
    }
    console.log(random(100, 400));
    

    5. 流程控制

    5.1 if条件判断语句

    var score = 100;
    if(score > 80){
       console.log('可以吃鸡了');
    }else if(){
        console.log('在家呆着');
    }else if{
    
    }else{
        
    }
    

    5.2 三元运算符

    三元运算符它解决了像if..else块较少的代码。如果你只有两个通过true/false条件选择。语法如下:

    (codition) ? run this code : run this code instead;
    

    让我们看一下极简的例子:

    var isResult  =  1 > 2 '真的' : '假的' ;
    

    我们知道1是不大于2的,它返回了假的。所以isResult的值为'假的'

    5.3 switch语句

    var weather = prompt('请输入今天的天气');
    switch (weather) {
        case '晴天':
            console.log('可以去打篮球');
            break;
        case '下雨':
            console.log('可以睡觉');
            break;
        default:
            console.log('学习');
            break;
    }
    

    4.== 与 === 的区别

    var a = 2;
    var b = '2';
    console.log(a == b);//比较的是值,
    console.log(a === b); //比较是值和数据类型
    

    6. 循环

    1.for循环

    var arr = [8,9,0];
    //1.初始化循环变量  2.循环条件  3.更新循环变量
    for(var i = 0;i < arr.length; i++){
        console.log(arr[i]);
    }
    
    

    2.while循环

    // 打印1-100之间的数字
    var a = 1;
    while(a <= 100){
        console.log(a);
        a+=1;
    }
    
    
  • 相关阅读:
    cf Inverse the Problem (最小生成树+DFS)
    cf Make It Nondeterministic (简单贪心)
    cf Learn from Life (简单贪心)
    hdu 5057 Argestes and Sequence (数状数组+离线处理)
    hdu 5056 Boring count (类似单调队列的做法。。)
    hdu 5055 Bob and math problem (很简单贪心)
    三样东西能让女人幸福一生
    第01课 OpenGL窗口(4)
    爱情要不要吃回头草?(林忆)
    第01课 OpenGL窗口(3)
  • 原文地址:https://www.cnblogs.com/yangjie0906/p/11405407.html
Copyright © 2011-2022 走看看