实践4 JavaScript及其应用(2)
2021/4/28 1:25:17
本文主要是介绍实践4 JavaScript及其应用(2),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.设计一个受保护的累加数据,只能通过一个方法往里面添加数据并返回累加结果。
function myCount(n) { var sum=0; while(n>=0){ sum=sum+n; n--; } return sum // 该函数返回 n 的累加 } console.log("累加结果为:"+myCount(100))
测试1:10 运行结果:累加结果为:55 测试2:100 运行结果:累加结果为:5050
运行截图
测试 1 :10
测试 2 :100
2.设计3个类,形状类、矩形类(继承形状类)、正方形类(继承矩形类),创建一个矩形对象和一个正方形对象,分别求取其面积。
//设计3个类,形状类、矩形类(继承形状类)、正方形类(继承矩形类),创建一个矩形对象和一个正方形对象,分别求取其面积。 function Shape() { this.Area = function(a,b){ return a*b; } } //子类型 function Rectangle(length,wide) { this.length = length this.wide = wide; }; Rectangle.prototype = new Shape() // 子类型的原型为父类型的一个实例对象 function Square(side) { this.side = side; } Square.prototype = new Rectangle(); var Rectangles1 = new Rectangle(3,5); var Squares2 = new Square(6); console.log("矩形面积为:"+Rectangles1.Area(Rectangles1.length,Rectangles1.wide)); console.log("正方形面积为:"+Squares2.Area(Squares2.side, Squares2.side));
测试1: 矩形长:3 矩形宽:5 正方形边长:3 运行结果: 矩形面积为:15 正方形面积为:36 测试2:100 运行结果:累加结果为:5050
运行截图
测试:10
测试:100
3.设计一个学生类,当对其成绩属性赋值时,如果成绩不在0~100之间则抛出异常。
function Student(n){ try{ if(n>100) throw "成绩超过100,请重新输入!!" if(n<0) throw "成绩低于 0 ,请重新输入!!" } catch(err){ return err; } } console.log(Student(-55))
4.编写一个async函数,用于等待指定秒数。
function b(f,t,m){//f=1:模拟成功,f=0:模拟失败,t:延时,m:信息 console.log(31); return new Promise((resolve,reject)=>{//可阻塞 console.log(32); setTimeout(x=>{ console.log(33); if(f)resolve(x);//成功 else reject(x);//失败 console.log(34); },t,m); console.log(35); }); } console.log(1); (async ()=>{//匿名async函数,await只能出现在async函数体中 try{ console.log(11); console.log(12,await a());//异步操作未阻塞 console.log(13,await b(0,1000,'reject'));//阻塞,抛出异常,后续代码不再执行 console.log(14,await b(1,1000,'resolve'));//阻塞,传回数据 console.log(15); }catch(err){ console.log(16,err);//捕获异常 } })(); console.log(2);
这篇关于实践4 JavaScript及其应用(2)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-07-04TiDB 资源管控的对撞测试以及最佳实践架构
- 2024-07-03万字长文聊聊Web3的组成架构
- 2024-07-02springboot项目无法注册到nacos-icode9专业技术文章分享
- 2024-06-26结对编程到底难不难?答案在这里
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现