JavaScript 学习笔记——内部对象/面向对象编程

目录

五、内部对象

5.1 标准对象

5.2 Date

5.3 JSON

六、面向对象编程

6.1 面向对象原型继承

6.2 面向对象class继承 


往期内容:

JavaScript学习笔记—— 快速入门(基本语法/数据类型快速浏览)

JavaScript学习笔记——数据类型详解

JavaScript学习笔记——函数

五、内部对象

5.1 标准对象

 //标准对象
    typeof 123
    'number'
    typeof '123'
    'string'
    typeof true
    'boolean'
    typeof NaN
    'number'
    typeof []
    'object'
    typeof {}
    'object'
    typeof Math.abs
    'function'
    typeof undefined
    'undefined'

5.2 Date

  • Date 对象用于处理日期与时间。
  • 创建 Date 对象: new Date()
var now=new Date();
    console.log(now);   //当前时间

1.getFullYear()

从 Date 对象以四位数字返回年份

now.getFullYear();  //年

2.getMonth()

从 Date 对象返回月份 (0 ~ 11)

now.getMonth();     //月 0-11

当前时间为 三月,返回值从0开始,所以控制台打印为 2

3.getDate()

从 Date 对象返回一个月中的某一天 (1 ~ 31)

now.getDate();      //日

4.getDay()     

从 Date 对象返回一周中的某一天 (0 ~ 6)

now.getDay();       //星期几

5.getHours()     

返回 Date 对象的小时 (0 ~ 23)

now.getHours();     //时

6.getMinutes()  

返回 Date 对象的分钟 (0 ~ 59)

now.getMinutes();   //分

7.getSeconds()  

返回 Date 对象的秒数 (0 ~ 59)

now.getSeconds();   //秒

8.getTime() 

  • 时间戳 全世界统一 

  • 返回 1970 年 1 月 1 日至今的毫秒数

now.getTime(); 

9.时间戳转为时间

console.log(new Date(1646723594034)) //时间戳转为时间

10.toLocaleString()

  • 根据本地时间格式,把 Date 对象转换为字符串
  • 注意:调用是一个方法 不是一个属性
now=new Date(1646723594034);
console.log(now.toLocaleString())        //注意:调用是一个方法 不是一个属性
// function toLocaleString(){ [native code]}

11.toUTCString()

根据世界时,把 Date 对象转换为字符串

 now=new Date(1646723594034);
 console.log(now.toUTCString());

5.3 JSON

1.什么是JSON

  • JSON: JavaScript Object Notation(JavaScript 对象表示法) 
  • 轻量级的文本数据交换格式
  • 具有简洁清晰的层次结构
  • 易于人阅读和编写,同时也易于机器解析和生成,有效提升网络传输效率

在 JavaScript 中一切皆为对象,任何 JavaScript 支持的类型都可以用 JSON 来表示

格式:

  • 对象用 { }
  • 数组用 [ ]
  • 所有键值对都是用 key:value

2.JSON字符串和JS对象的转化

 var user={
        name:"zhangsan",
        age:3,
        sex:'男'
    }

使用 JSON.stringify() 方法将 JavaScript 对象转换为字符串

var jsonUser=JSON.stringify(user)

 使用 JSON.parse() 方法将数据转换为 JavaScript 对象

var obj=JSON.parse('{"name":"zhangsan","age":3,"sex":"男"}');

六、面向对象编程

6.1 面向对象原型继承

 var student={
        name:"zhangsan",
        age:3,
        run:function (){
            console.log(this.name+" run...")
        }
    };
    var xiaoming={
        name:"xiaoming"
    };

此时的 xiaoming 只有 name 这个属性

__proto__属性

  • 每个JS对象一定对应一个原型对象,并从原型对象继承属性和方法
  • 对象__proto__属性的值就是它所对应的原型对象
  • 原型对象 可以理解成父类
xiaoming.__proto__=student;    //xiaoming的原型是student

此时 xiaoming 继承了 原型对象 student 的方法和属性

6.2 面向对象class继承 

 class关键字在ES6引入

    function student(name){
        this.name=name;
    }

给student新增一个方法:

1.ES6以前的原生方式: 找到原型增加方法

    student.prototype.hello=function(){
        alert('hello')
    }

2.ES6之后 定义一个类:属性,方法

①定义一个学生类

 class student{
        constructor(name) {
            this.name=name;
        }
        hello(){
        console.log("hello");
        }
    }
var xiaohong =new student("xiaohong")

②puipl 继承 student 类

 class pupil extends student{
        constructor(name,grade) {
            super(name);
            this.grade=grade;
        }
        mygrade(){
            console.log('我是一名小学生');
        }
    }
var xiaohong =new pupil("xiaohong",2)

 本质:查看对象原型

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HUA_8376

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值