Javascript学习笔记——对象和内置对象

1|0对象

在JavaScript中,所有的事物都是对象,例如字符串、数值、数组、函数等。

1|1创建对象

1|0利用对象字面量创建对象

var obj = {}; //创建了一个空的对象 var obj = { uname: '张三疯', age: 18, sex: '男', sayHi: function() { console.log('hi~'); } }

里面的属性或者方法采取键值对的形式

多个属性或者方法中间用逗号隔开的

方法冒号后面跟的是一个匿名函数

1|0利用new object创建对象

利用等号=赋值的方法添加对象的属性和方法

每个属性和方法之间用分号结束

var obj = new Object(); // 创建了一个空的对象 obj.uname = '张三疯'; // 采用追加的的方式增加属性 obj.age = 18; obj.sex = '男'; obj.sayHi = function() { console.Jog('hi~'); }

1|0利用构造函数创建对象

构造函数:是一种特殊的函数,主要用来初始化对象,即为对象成员变量赋初始值,它总与new运算符一起使用。可以把对象中一些公共的属性和方法抽取出来,然后封装到这个函数里面。

构造函数名字首字母要大写。

构造函数不需要return就可以返回结果。

调用构造函数必须使用new。

function Star(uname, age, sex) { this.name = uname; this.age = age; this.sex = sex; this.sing = function() { console.log(); } } var ldh = new Star('刘德华', 18, '男'); //调用函数返回的是一个对象 console.log(typeof ldh); console.log(ldh.name); console.log(ldh['sex']);

1|2new在执行时会做四件事情

  1. 在内存中创建一个新的空对象。
  2. 让this 指向这个新的对象。
  3. 执行构造函数里面的代码,给这个新对象添加属性和方法。
  4. 返回这个新对象(所以构造函数里面不需要return)。

1|3使用对象

1|0调用对象的属性

对象名.属性名

对象名['属性名']

console.log(obj.uname); console.log(obj['sex']); obj.sayHi();

1|0使用循环打印对象的属性

for (var k in obj) { console.log(k); console.log(obj[k]); }

2|0内置对象

JavaScript中的对象分为3种:自定义对象、内置对象、浏览器对象

前面两种对象是JS基础内容,属于ECMAScript;第三个浏览器对象属于JS独有的。

JavaScript提供了多个内置对象:Math、Date、Array、string等

2|1Math

Math不需要创建对象,其内部的函数都是静态的。

四舍五入,5往大的方向取,0.5取1,-0.5取0。

2|2Date

1|0创建对象

需要通过Date()创建对象,有四种创建方式。

  1. 如果没有提供参数,那么新创建的Date对象表示实例化时刻的日期和时间。

  2. 通过Unix 时间戳,它是一个整数值,表示自1970年1月1日00:00:00 UTC(the Unix epoch)以来的毫秒数,忽略了闰秒。请注意大多数 Unix 时间戳功能仅精确到最接近的秒。

  3. 表示日期的字符串值。该字符串应该能被 Date.parse() 正确方法识别(即符合 IETF-compliant RFC 2822 timestampsversion of ISO8601)。

    注意:当Date作为构造函数调用并传入多个参数时,如果数值大于合理范围时(如月份为 13 或者分钟数为 70),相邻的数值会被调整。比如 new Date(2013, 13, 1)等于new Date(2014, 1, 1),它们都表示日期2014-02-01(注意月份是从0开始的)。其他数值也是类似,new Date(2013, 2, 1, 0, 70)等于new Date(2013, 2, 1, 1, 10),都表示同一个时间:2013-03-01T01:10:00

  4. 通过分别提供日期与时间的每一个成员。

注意,Date中的月份和星期,是从0开始的。

new Date(); new Date(value); // Unix 时间戳 new Date(dateString); // 表示日期的字符串值 new Date(year, monthIndex [, day [, hours [, minutes [, seconds [, milliseconds]]]]]);

案例

var date2 = new Date('2019-10-1 8:8:8'); var today = new Date(); var birthday = new Date('December 17, 1995 03:24:00'); var birthday = new Date('1995-12-17T03:24:00'); var birthday = new Date(1995, 11, 17); var birthday = new Date(1995, 11, 17, 3, 24, 0);

1|0常用方法

方法名 说明 代码
getFullYear() 获取当年 dObj.getFullYear()
getMonth() 获取当月(0-11) dObj.getMonth()
getDate() 获取当天日期 dObj.getDate()
getDay() 获取星期几(周日0到周六6) dObj.getDay()
getHours() 获取当前小时 dObj.getHours()
getMinutes() 获取当前分钟 dObj.getMinutes()
getSeconds() 获取当前秒钟 dObj.getSeconds()

获取时间戳(距离1970年1月1号的毫秒数)

//1.通过valueof() getTime() var date = new Date(); console.log(date.valueof()); console.log(date.getTime()); //2.简单的写法(最常用的写法) var date1 = +new Date(); console.log(date1); // 3.H5新增 console.log(Date.now());

__EOF__

本文作者Tyu
本文链接https://www.cnblogs.com/Tyu-t/p/15766579.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   垆边画船听雨眠  阅读(45)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示