对象
一、定义对象
var dog={
name:"LiLy",
breed:"Musky",
weight:60,
" ":20,
"10":666,
jump:function(){
alert("jumping");
}
}
console.log(dog.name);
//访问对象方法
dog.jump();
//访问对象属性
console.log(dog["name"]);
console.log(dog[" "]);
-
可以直接给对象添加属性
Jane.weight='30kg'; console.log(Jane);
-
用delet删除属性
delete Jane.weight;
-
遍历对象属性
for(var key in Jane){ console.log(Jane[key]); //console.log(key);//属性名称 }
- JSON格式:传递数据的一种格式,不是js特有的
二、构造函数
- 构造函数首字母大写
- 就是构造对象的,没有return
- 在构造函数中,this 指代实例对象
- 通过 new 关键字调用构造函数
function Movie(title,type,score,showTime) {
this.title=title;
this.type=type;
this.score=score;
this.showTime=showTime;
this.getNextShowing=function(){
var now=new Date();
for(var i=0;i<this.showTime.length;i++){
if(parseInt(this.showTime[i])>now.getHours()){
console.log(this.showTime[i]);
alert("下次播放时间为:"+this.showTime[i]);
if((parseInt(this.showTime[i])-now.getHours())==1)
{
var m=60-now.getHours();
alert("距离现在还有"+m+"分钟");
}else if((parseInt(this.showTime[i])-now.getHours())>1){
var n=parseInt(this.showTime[i])-now.getHours()-1;
var m=60-now.getMinutes();
alert("距离现在还有"+n+"小时"+m+"分");
}
}
}
}
}
var movie1 = new Movie("《夺冠》","爱国",8,["8:00","14:00","19:36"]);
// for(var key in movie1){
// console.log(movie1[key]);
// }
console.log(movie1.getNextShowing());
三、对象分类
-
宿主对象:由 JavaScript 解析器所嵌入的宿主环境定义的(如: window,document,event)
-
内置对象:由 ECMAScript 规范定义的对象或构造器对象(如: Array、String)
-
String 对象处理字符串相关操作
创建 string 实例对象,例: var str = new String(“some string here”);
var str =“some string here”; -
Array 对象处理数组相关操作
创建 array 实例对象,例: var movies = new Array(“007”, “指环王”);
var movies = [“007”, “指环王”] ;
-
-
自定义对象
四、(内置对象)Math对象
不需要创建对象
- Math. round( ):四舍五入
- Math.floor( ) :向下取整 Math.ceil( ):向上取整
- –Math.random( ):生成 0~1 随机数
- Math.max( ) :取最大值 Math.min( ):取最小值
五、(内置对象)Date对象
需要创建date对象 var now = new Date( );
-
toLocaleString( ):获取当前日期时间
document.write(now);//Mon Nov 02 2020 21:22:32 GMT+0800 (中国标准时间) document.write(now.toLocaleString());//2020/11/2 下午9:22:32
-
获取年份、月份(0-11月)、日期: getFullYear()、 getMonth()、getDate()
//以11月2号为例 document.write(now.getFullYear());//2020 document.write(now.getMonth());//10;如果为11月则输出10月,月份范围为:0~11 document.write(now.getDate());//2 document.write(now.getDay());//星期0-6
-
获取小时、分钟、秒钟: getHours()、 getMinutes()、 getSeconds()