创建对象
/*创建一个电脑对象,该对象要有颜色、重量、品牌、型号,可以看电影、听音乐、打游戏、敲代码*/
function Com(color,weight,brand,type){
this.color=color;
this.weight=weight;
this.brand=brand;
this.type=type;
this.actions=function(action){
console.log(action);
}
}
var s8=new Com('白','4kg','leveon','v7');
console.log(s8.color);
console.log(s8.weight);
console.log(s8.brand);
console.log(s8.type);
s8.actions('看电影,听音乐,打游戏,敲代码');
2.翻转数组
/*实现反转任意数组*/
function reverse(arr){
var newarr=[];
for(var i=0;i<arr.length;i++){
newarr[i]=arr[arr.length-1-i];
}
return newarr;
}
var arr1=reverse([8,9,5,6,4]);
console.log(arr1);
var arr2=reverse([7,3,5,2]);
console.log(arr2);
3.冒泡排序
/*冒泡排序*/
function paixu(arr){
for(var i=0;i<arr.length-1;i++){//趟数
for(var j=0;j<arr.length-1-i;j++){//次数
if(arr[j]>arr[j+1]){//变换
var temp;
temp=arr[j+1];
arr[j+1]=arr[j];
arr[j]=temp;
}//将最小的排在最前面
}
}
return arr;
}
var arr1=paixu([8,9,5,6,4]);
console.log(arr1);
var arr2=paixu([7,9,10,6,8]);
console.log(arr2);
4.简易计算机
/*简易计算机*/
var i=parseFloat(prompt('欢迎使用简易计算器:'+'\n'+'1.加法运算'+'\n'+'2.减法运算'+'\n'+'3.乘法运算'+'\n'+'4.除法运算'+'\n'+'5.退出'+'\n'+'请输入您的选项:'));
while(true){
//var problem=prompt('欢迎使用简易计算器:'+'\n'+'1.加法运算'+'\n'+'减法运算'+'\n'+'乘法运算'+'\n'+'除法运算');
//var i=parseInt(problem('请输入您的选项:')) ;
var sum=0;
if(i==1){
var num1=parseFloat(prompt('请输入一个值:'));
var num2=parseFloat(prompt('请输入一个值:'));
sum=num1+num2;
alert(sum);
i=parseFloat(prompt('欢迎使用简易计算器:'+'\n'+'1.加法运算'+'\n'+'2.减法运算'+'\n'+'3.乘法运算'+'\n'+'4.除法运算'+'\n'+'5.退出'+'\n'+'请输入您的选项:'));
}
else if(i==2){
var num1=parseFloat(prompt('请输入一个值:'));
var num2=parseFloat(prompt('请输入一个值:'));
sum=num1-num2;
alert(sum);
i=parseFloat(prompt('欢迎使用简易计算器:'+'\n'+'1.加法运算'+'\n'+'2.减法运算'+'\n'+'3.乘法运算'+'\n'+'4除法运算'+'\n'+'5.退出'+'\n'+'请输入您的选项:'));
}
else if(i==3){
var num1=parseFloat(prompt('请输入一个值:'));
var num2=parseFloat(prompt('请输入一个值:'));
sum=num1*num2;
alert(sum);
i=parseFloat(prompt('欢迎使用简易计算器:'+'\n'+'1.加法运算'+'\n'+'2.减法运算'+'\n'+'3.乘法运算'+'\n'+'4.除法运算'+'\n'+'5.退出'+'\n'+'请输入您的选项:'));
}
else if(i==4){
var num1=parseFloat(prompt('请输入一个值:'));
var num2=parseFloat(prompt('请输入一个值:'));
sum=num1/num2;
alert(sum);
i=parseFloat(prompt('欢迎使用简易计算器:'+'\n'+'1.加法运算'+'\n'+'2.减法运算'+'\n'+'3.乘法运算'+'\n'+'4.除法运算'+'\n'+'5.退出'+'\n'+'请输入您的选项:'));
}
else if(i==5){
break;
}else{
i=parseFloat(prompt('欢迎使用简易计算器:'+'\n'+'1.加法运算'+'\n'+'2.减法运算'+'\n'+'3.乘法运算'+'\n'+'4.除法运算'+'\n'+'5.退出'+'\n'+'请输入您的选项:'));
}
}
小结
创建对象的三种方式:
方一:
1.利用对象字面量创建对象{}
(1)里面的属性或方法我们采取键值对的形式 键 属性名: 值 属性值
(2)多个属性或方法中间用逗号隔开的
(3)方法冒号后面跟的是一个匿名函数
2.使用对象
(1)调用对象的属性 我们采取 对象名.属性名 .我们理解为 的
(2)调用属性还有一种方法 对象名['属性名']
(3) 调用对象的方法 sayHi 对象名.方法名()千万别忘记添加小括号
格式参考:
创建一个对象
var obj={
uname:'小练',
age:20,
sex:'女',
sayHi:function(){
console.log('hi~');
}
}
console.log(obj.uname);//调用属性
console.log(obj['uname']);//调用属性
obj.sayHi();//调用方法
方二:
利用new Object创建对象
格式参考:
var obj=new Object()//new Object 创建一个空的对象
obj.uname='33';//追加属性
obj.age=22;
obj.sex='男'
obj.sayHi=function(){
console.log('hi~');
}
//利用等号= 赋值的方法 添加对象的属性
//每个属性和方法之间 分号结束
console.log(obj.uname);//调用属性
console.log(obj['age']);//调用属性
obj.sayHi();//调用方法
方三:
构造函数:利用函数的方法 重复这些相同的代码 里面封装的不是普通的代码,而是对象
构造函数 就是把我们对象里面一些相同的属性和方法抽象出来封装到函数里面
利用构造函数创建对象
(1)构造函数的语法格式
function 构造函数名(){
this.属性=值;
this.方法=function(){}
}
new 构造函数名();//调用函数返回的是一个对象
//构造函数名字首字母要大写
//构造函数不需要return就可以返回结果
//调用构造函数必须使用new
//我们属性和方法前必须添加this
√ for...in语句用于对数组或者对象的属性进行循环操作,变量一般用k或key来表示
格式:
for in 遍历我们的对象
for(变量in对象)
eg:
/*遍历对象*/
var obj={
name:'33',
age:'20',
sex:'nan',
fn:function(){}
}
for(var k in obj){
console.log(k);//得到属性名
console.log(obj[k]);//得到属性值
}