网站建设手机网站,免费下载代码项目的网站,微商城软件开发,佛山哪家网站建设比较好对象
1.什么是对象
类是对象的抽象,对象是类的实例
程序算法数据结构
万物皆对象,对象是一个具体的事物,看到见摸得着,对象是一组无序相关属性和方法的集合(无序,所以对象没有length属性),所有事物都是对象,列如字符串,数值,数组,函数等.
属性:事物的特征,在对象中用属性表…对象
1.什么是对象
类是对象的抽象,对象是类的实例
程序算法数据结构
万物皆对象,对象是一个具体的事物,看到见摸得着,对象是一组无序相关属性和方法的集合(无序,所以对象没有length属性),所有事物都是对象,列如字符串,数值,数组,函数等.
属性:事物的特征,在对象中用属性表示(常用名词)方法:事物的行为,在对象中用方法表示(常用动词)
2.对象的创建方式
1.利用字面量进行创建对象
//利用字面量创建一个空的对象
var obj {};//创建了一个空的对象
var obj1{uname:yiling,sex:gril,age:21,sayHi:function(){console.log(hi..);}
}
// 1.里面的属性或者方法我们采取键值对的形式 键 属性名: 值 属性值
// 2.多个属性或者方法中间使用逗号分割
// 3.方法冒号跟的是一个匿名函数
//使用对象
//1.调用对象的属性 我们采取对象名.属性名 .我们理解为 的
console.log(obg1.uname);//yiling
//2.方法二调用 对象名[属性名],注意括号里面的属性必须加引号,我们后面会用
console.log(obg1[uname]);//yiling
//3.调用对象方法 sayHi的执行 对象名.方法名() 千万别忘记添加小括号
obj1.sayHi();作业 /* 请用对象字面量的形式创建一个名字为可可的狗对象。具体信息如下姓名可可类型(ype):阿拉斯加状年龄5岁颜色棕红色。技能汪汪汪(bark),演电影(showFilm)*/var dog {uname: 可可,type: 阿拉斯加犬,age: 5,color: 棕红色,bark: function() {console.log(汪汪汪);},showFilm: function() {console.log(看电视);}}console.log(dog.age);console.log(dog[color]);dog.bark();//不需要再次加console.log,否则会报出underfined2.利用new Object创建对象
var objnew Object();//创建了一个空对象 注意O要大写
obj.unameyiling;
obj.sex男;
obj.age18;
obj.sayHifunction(){console.log(hi)
}
//1.我们利用等号赋值的方法 添加对象的属性和方法
//2.每个属性和方法之间 分号结束
//3.调用跟字面量的调用方法一样
console.log(obj.uname);
console.log(obj[age]);
obj.sayHi();作业 // 请用new Object形式创建一个鸣人对象。// 具体信息如下// ·姓名鸣人// 。性别男// 。年龄19岁// 。技能(ski):影分身术var obj new Object();obj.uname 名人;obj.sex 男;obj.age 18;obj.skill function() {console.log(影分身术);}console.log(obj[age]);console.log(obj.sex);obj.skill();3.利用构造函数创建对象
构造函数:是一种特殊的函数,主要用来初始化对象,即为对象成员变量赋初始值,它总与new运算符一起使用,我们可以把对象中一些公共的属性和方法抽取出来,然后封装到这个函数里面
在这里插入图片描述
构造方法的语法格式:
function 构造函数名(){
this.属性值;
this.方法function(){}
}
new 构造函数名();//调用必须加new关键字
function Star(uname,age,sex){this.nameuname;this.ageage;this.sexsex;this.sing function(sang) {console.log(sang)}
}
var ylnew Star(yiling,21,女);//函数返回的是一个对象
console.log(yl.name);
console.log(yl[sex]);yl.sing(素颜);
//1.构造函数的首字母要大写
//2.我们构造函数不需要return 就可以返回结果
//3.我们调用构造函数,必须使用new关键字
//4.我们只要用new Star() 调用函数,就会创建一个对象{}
//5.我们的属性和方法面前必须加this3.变量,属性,函数,方法的区别 变量和属性的相同点,他们都是用来存储数据的 不同点: 变量:单独声明并赋值 使用的时候直接写变量名 单独存在属性:在对象里面的不需要声明的,使用的时候必须写 对象名.属性名 函数和方法的相同点:都是实现某种功能 做某件事 不同点: 函数是单独声明 并且调用的 函数名() 单独存在的方法 在对象里面 调用的时候 对象.方法()
4.new关键字
new在执行时会做四件事情 1.在内存中创建一个新的空对象。 2.让this指向这个新的对象。 3.执行构造函数里面的代码给这个新对象添加属性和方法。 4.返回这个新对象所以构造函数里面不需要return)。
5.遍历对象
使用for(var 变量名称 in 对象名称){}进行遍历 var obj {uname: yiling,age: 21,sex: 女,sing: function() {}}// for in 遍历我们的对象//for(变量 in 对象){}for (var k in obj) {console.log(obj[k]); //输出得到的是属性值,因为k是变量,所以用中括号console.log(k); //k 变量输出 得到的是属性名}7.内置对象
1.random随机数 Math对象随机数方法 random()返回一个随机小数 0x1 这个方法里面不跟参数 代码验证 console.log(Math.random()); 我们想要得到两个数之间的随机整数 并且包含这两个数整数 Mathfloor(Math.random()*(max-min1))min;function getRandom(min,max){ return Math.floor(Math.random()*(max-min1))min;}console.log(getRandom(1,10));随机点名 function getRandom(min, max) {return Math.floor(Math.random() * (max - min 1) min);}var arr [易玲, 阳哥, 廖廖, 易易];console.log(arr[getRandom(0, arr.length - 1)]);猜数字游戏 // 程序随机生成一个1~50之间的数字只有10次机会并让用户输入一个数字// 1.如果大于该数字就提示数字大了继续猜// 2.如果小于该数字就提示数字小了继续猜// 3.如果等于该数字就提示猜对了结束程序。var random1 Math.floor(Math.random() * 50) 1;var count 0;console.log(random1)while (true) {var num parseInt(prompt(请输入一个数字));if (num random1) {console.log(数字大了,继续猜);} else if (num random1) {console.log(数字小了,继续猜);} else {console.log(恭喜你,猜对了!);break;}count;console.log(count)if (count 10) {break;}}2.Date()
1.概述
date对象和math对象不一样,它是一个构造函数,所以我们需要实例化之后才能使用,必须使用new来创建date实例用来处理日期和时间
2.Date()方法的使用 获取挡当前时间必须实例化 var now new Date();
console.log(now)Date()构造函数的参数 如果括号里面有时间,就返回参数里面的时间,列如日期格式字符串为’2019-5-1’,可以写成new Date(‘2019-5-1’) 或者new Date(‘2019/5/1’)或者new Date(2019,5,1)[但是这里返回的是6月 不是5月] Date()方法 返回当前时间年月日 星期的作业 var date new Date();var year date.getFullYear();var month date.getMonth() 1;var dates date.getDate();var day date.getDay();var arr [星期天, 星期一, 星期二, 星期三, 星期四, 星期五, 星期六];console.log(year 年 month 月 dates 日 arr[day])
//打印 2023年7月29日 星期六获取时分秒 var date new Date();var h date.getHours();var s date.getMinutes();var m date.getSeconds();console.log(h, s, m);function getTimer() {var h date.getHours();h h 10 ? 0 h : h;var s date.getMinutes();s s 10 ? 0 s : s;var m date.getSeconds();m m 10 ? 0 m : m;return h : s : m;}console.log(getTimer());获取Date总的毫秒数(时间戳) 不是当前时间的毫秒数,而是距离1970年1月1号过了多少毫秒数 通过valueOf(),getTime()简单写法(最常用的写法) var date1 new Date();H5新增的 获得总的毫秒数 Date.now() 倒计时案例 /* ①核心算法输入的时间减去现在的时间就是剩余的时间即倒计时但是不能拿着时分秒相减比如05分减去25分结果会是负数的。用时间戳来做。用户输入时间总的毫秒数减去现在时间的总的毫秒数得到的就是剩余时间的毫秒数。③把剩余时间总的毫秒数转换为天、时、分、秒时间戳转换为时分秒转换公式如下·dparselnt(总秒数/60/60/24)/计算天数·hparselnt(总秒数/60/60%24)/计算小时·mparselnt(总秒数/60%60)/计算分数sparselnt(总秒数%60)计算当前秒数*/function countDown(time) {//返回当前时间戳var nowTime new Date();//返回用户输入的时间戳var inputTime new Date(time);var times (inputTime - nowTime) / 1000; //返回当前的总秒数,所以是除以1000// 把剩余时间总的毫秒数转换为天、时、分、秒时间戳转换为时分秒var d parseInt(times / 60 / 60 / 24);d d 10 ? 0 d : d;var h parseInt(times / 60 / 60 % 24);h h 10 ? 0 h : h;var m parseInt(times / 60 % 60);m m 10 ? 0 m : m;var s parseInt(times % 60);s s 10 ? 0 s : s;return d 天 h : m : s;}console.log(countDown(2023-7-29 12:00:00));