javascript练习题(四)
2016-04-19 10:13
597 查看
第5章 原型
1.创建一个名为shape的对象,并为该对象设置一个type属性和一个getType()方法。
2.定义一个原型为shape的Triangle()构造函数,用Triangle()创建的对象应有三个对象属性—-a、b、c,分别用于表示三角形的三条边。
3.在对象原型中添加一个名为getPerimeter()的新方法。
4.使用下面的代码来测试您之前的实现:
5.用循环遍历对象t,列出其所有的属性和方法(不包括原型部分的)。
1、2、3、4、5题参考答案
首先说一句,作者的编程水平可能比较碉堡,但是数学拙计了吧
6.实现随机打乱函数shuffle(),执行效果如下:
参考答案:
1.创建一个名为shape的对象,并为该对象设置一个type属性和一个getType()方法。
2.定义一个原型为shape的Triangle()构造函数,用Triangle()创建的对象应有三个对象属性—-a、b、c,分别用于表示三角形的三条边。
3.在对象原型中添加一个名为getPerimeter()的新方法。
4.使用下面的代码来测试您之前的实现:
var t = new Triangle(1,2,3); t.constructor===Triangle; //true shape.isPrototypeOf(t); //true t.getPerimeter(); //6 t.getType(); //"triangle"
5.用循环遍历对象t,列出其所有的属性和方法(不包括原型部分的)。
1、2、3、4、5题参考答案
首先说一句,作者的编程水平可能比较碉堡,但是数学拙计了吧
var shape={ type:"shape", getType:function(){ return this.type; } }; function Triangle(pa,pb,pc){ this.type="triangle"; this.a=pa; this.b=pb; this.c=pc; } Triangle.prototype=shape; Triangle.prototype.getPerimeter=function(){ return this.a+this.b+this.c; }; Triangle.prototype.constructor=Triangle; var t = new Triangle(1,2,3); console.log(t.constructor===Triangle); console.log(shape.isPrototypeOf(t)); console.log(t.getPerimeter()); console.log(t.getType()); for(var a in t){ if(t.hasOwnProperty(a)){ console.log(a+"---"+t[a]); } }
6.实现随机打乱函数shuffle(),执行效果如下:
[1,2,3,4,5,6,7,8,9].shuffle(); //[2,4,1,8,9,5,3,7]
参考答案:
Array.prototype.shuffle=function(){ var temp; var r; var i=this.length; while(i){ r=Math.floor(Math.random()*i--); temp=this[r]; this[r]=this[i]; this[i]=temp; } };
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- Android学习笔记(二九):嵌入浏览器
- Android java 与 javascript互访(相互调用)的方法例子
- JavaScript演示排序算法
- javascript实现10进制转为N进制数
- 最后一次说说闭包
- Ajax
- 2019年开发人员应该学习的8个JavaScript框架
- HTML中的script标签研究
- 对一个分号引发的错误研究
- 异步流程控制:7 行代码学会 co 模块
- ES6 走马观花(ECMAScript2015 新特性)
- JavaScript拆分字符串时产生空字符的原因
- Canvas 在高清屏下绘制图片变模糊的解决方法
- Redux系列02:一个炒鸡简单的react+redux例子
- JavaScript 各种遍历方式详解
- call/apply/bind 的理解与实例分享