JavaScript 对象篇

对象(自定义对象,内置对象,浏览器对象)
1.对象是客观存在的事物,是类的具体化。在js中,对象是一组无序的相关属性和方法的集合。
2.创建对象的三种方式
利用字面量创建对象

var obj={
uname:'张三丰’,
age:18,
sayHi:function{
console.log('hi');
    }
}


(1)多个属性或者方法中间用逗号隔开。
(2)方法冒号后面跟的是一个匿名函数
(3)调用对象名的属性(方法),采用对象名.属性(方法)(类似于C语言中的结构体)或者对象名['属性‘];
利用new object创建对象
利用构造函数创建对象(构造函数:把对象里面一些相同的属性和方法抽象出来封装到函数里)
(1)构造函数的语法格式
。构造函数的名字首字母要大写
。调用构造函数必须用new
。构造函数不需要return 就可以返回结果

    

function 构造函数名(){
        this.属性=值;
        this.方法=function(){ };
    }
//使用构造函数
new 构造函数名();//容易忘记带new
举例
function Star(uname,age,sex){
    this.name=uname;
this.age=age;
this.sex=sex;
this.sing=function(sang){
console.log( sang);
}
}
var ldh=new Star('刘德华’,18,‘男’);


使用 ’方法‘ 时  ldh.sing('冰雨‘);
new关键字的执行过程
1.new 构造函数在内存中创建了一个空的对象
2.this就会指向刚才创建的空对象
3.执行构造函数里面的代码,给这个空对象添加属性和方法。
4.返回这个对象。
二,遍历对象
for..in用于对数组或者对象的属性进行循环操作
for(变量 in  对象){
    
}
例如

for(var k  in  obj){
console.log(k)//输出的是属性名
console.log(obj[k])   //输出的是属性值
}


内置对象
js自带的一些对象,供开发者使用,并提供了一些常用的或者基本而必要的功能(属性和方法)
内置对象有,Math,Date,Array,String等。
查文档
MDN:https://developer.mozilla.org/zh-CN/
Math
Math.PI  //圆周率
Math.Floor()  //向下取整
Math.ceil()  //向上取整
Math.round()  //四舍五入,就近取整  注意-3.5  结果是-3 遇到 .5 往大了取,其他都是四舍五入
Math.abs()  //绝对值
Math.max()/Math.min()  //最大值与最小值
console.log(Math.abs('-1'))  //输出结果为1,隐式转换。会将字符串转换为数字。但像’pink'这类无法转换为数字的字符串会输出NaN
随机数方法 random()
1.返回一个随机的从0到1的小数,包括0不包括1.
2.这个函数里不含参数

//想要得到两个数之间的随机整数,并且包含这两个数
Math.Floor(Math.random()*(max-min+1)+min);
functiongetRandom(min,max){
   return  Math.Floor(Math.random()*(max-min+1)+min);
}
//随机点名
var arr=['张三','张三丰','小二','小三'];
console.log(arr[getRandom(0,3)])
//想要得到两个数之间的随机整数,并且不包含这两个数
Math.Floor(Math.random()*(max-min)+min);

 Date(构造函数)

1.只能通过调用Date构造函数来实例化日期对象,以常规函数调用他(即不加new操作符)将会返回一个字符串,另外,Date对象没有字面量格式。

2.日期格式化

  getFullYear();获取当年

  getMonth();获取当月;(0-11月)

  getDate(); 获取当天日期

  getDay(); 获取星期几(周日0到周六6)

  getHours(); 获取当前小时

  getMinutes(); 获取当前分钟

  getSecongds(); 获取当前秒钟

3.

//使用Date,若无参数,则返回当前系统的当前时间
    var data=new Date();
    console.log(date);
//参数常用的写法,数字型: 2019,10,01  或者是字符串型  ’2019-10-1 8:8:8'
    var date1=new Date(2019,10,01);
    console.log(date1);//返回的是十一月,不是十月

若输出时间时想要以星期几的格式输出,可以用一个数组解决

     var date=new Date();
     var day=date.getDay();
     var arr=['星期日','星期一','星期二','星期三','星期四','星期六'];
     console.log(arr[day]);

 4.获得Date的总的毫秒数

(1)通过Date获得的毫秒数,是距离1970年1月1号所经过的毫秒数

①通过 valueOf()    getTime()

var date=new Date();
console.log(date.valueOf());
console.log(date.getTime());

②H5新增的方法

  console.log(Date.now());

③简单的写法(最常用的方法)

var date1=+new Date();//+new Date返回的就是总的毫秒数
console.log(date1);
原文地址:https://www.cnblogs.com/echol/p/12445657.html