uni-app学习笔记之js异常处理try-catch-finally流程

2024-06-13 06:48

本文主要是介绍uni-app学习笔记之js异常处理try-catch-finally流程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 无finally或者finally不带return的情况下,try顺利执行则返回try—ok

			testFunc() {var res = this.demo()console.log(res);},demo() {try {var x = "ok"if (x == "err") throw "ERROR";return '1---ok';} catch (e) {console.log(e);return '2---err';} finally {console.log('finally');// return '3---finally';}return '4---end';}
21:14:33.940 finally  at pages/test/test.vue:28
21:14:33.958 1---ok  at pages/test/test.vue:17

2. 无finally或者finally不带return的情况下,try抛出异常则返回catch—err

			testFunc() {var res = this.demo()console.log(res);},demo() {try {var x = "err"if (x == "err") throw "ERROR";return '1---ok';} catch (e) {console.log(e);return '2---err';}finally {console.log('finally');// return '3---finally';}return '4---end';}
21:22:09.763 ERROR  at pages/test/test.vue:25
21:22:09.769 finally  at pages/test/test.vue:29
21:22:09.773 2---err  at pages/test/test.vue:17

3. 只要finally带上return,优先级高于其他任何return,必然返回3—finally

			testFunc() {var res = this.demo()console.log(res);},demo() {try {var x = "err"if (x == "err") throw "ERROR";return '1---ok';} catch (e) {console.log(e);return '2---err';}finally {console.log('finally');return '3---finally';}return '4---end';}
21:25:13.191 ERROR  at pages/test/test.vue:25
21:25:13.197 finally  at pages/test/test.vue:29
21:25:13.202 3---finally  at pages/test/test.vue:17

总结:

不带finally的try—catch异常处理双return模式,返回值可以对流程处理进行判断

这篇关于uni-app学习笔记之js异常处理try-catch-finally流程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1056567

相关文章

如何使用celery进行异步处理和定时任务(django)

《如何使用celery进行异步处理和定时任务(django)》文章介绍了Celery的基本概念、安装方法、如何使用Celery进行异步任务处理以及如何设置定时任务,通过Celery,可以在Web应用中... 目录一、celery的作用二、安装celery三、使用celery 异步执行任务四、使用celery

SpringBoot操作spark处理hdfs文件的操作方法

《SpringBoot操作spark处理hdfs文件的操作方法》本文介绍了如何使用SpringBoot操作Spark处理HDFS文件,包括导入依赖、配置Spark信息、编写Controller和Ser... 目录SpringBoot操作spark处理hdfs文件1、导入依赖2、配置spark信息3、cont

Node.js 中 http 模块的深度剖析与实战应用小结

《Node.js中http模块的深度剖析与实战应用小结》本文详细介绍了Node.js中的http模块,从创建HTTP服务器、处理请求与响应,到获取请求参数,每个环节都通过代码示例进行解析,旨在帮... 目录Node.js 中 http 模块的深度剖析与实战应用一、引言二、创建 HTTP 服务器:基石搭建(一

React实现原生APP切换效果

《React实现原生APP切换效果》最近需要使用Hybrid的方式开发一个APP,交互和原生APP相似并且需要IM通信,本文给大家介绍了使用React实现原生APP切换效果,文中通过代码示例讲解的非常... 目录背景需求概览技术栈实现步骤根据 react-router-dom 文档配置好路由添加过渡动画使用

SpringBoot使用minio进行文件管理的流程步骤

《SpringBoot使用minio进行文件管理的流程步骤》MinIO是一个高性能的对象存储系统,兼容AmazonS3API,该软件设计用于处理非结构化数据,如图片、视频、日志文件以及备份数据等,本文... 目录一、拉取minio镜像二、创建配置文件和上传文件的目录三、启动容器四、浏览器登录 minio五、

Python中异常类型ValueError使用方法与场景

《Python中异常类型ValueError使用方法与场景》:本文主要介绍Python中的ValueError异常类型,它在处理不合适的值时抛出,并提供如何有效使用ValueError的建议,文中... 目录前言什么是 ValueError?什么时候会用到 ValueError?场景 1: 转换数据类型场景

Spring中Bean有关NullPointerException异常的原因分析

《Spring中Bean有关NullPointerException异常的原因分析》在Spring中使用@Autowired注解注入的bean不能在静态上下文中访问,否则会导致NullPointerE... 目录Spring中Bean有关NullPointerException异常的原因问题描述解决方案总结

使用Vue.js报错:ReferenceError: “Vue is not defined“ 的原因与解决方案

《使用Vue.js报错:ReferenceError:“Vueisnotdefined“的原因与解决方案》在前端开发中,ReferenceError:Vueisnotdefined是一个常见... 目录一、错误描述二、错误成因分析三、解决方案1. 检查 vue.js 的引入方式2. 验证 npm 安装3.

MyBatis延迟加载的处理方案

《MyBatis延迟加载的处理方案》MyBatis支持延迟加载(LazyLoading),允许在需要数据时才从数据库加载,而不是在查询结果第一次返回时就立即加载所有数据,延迟加载的核心思想是,将关联对... 目录MyBATis如何处理延迟加载?延迟加载的原理1. 开启延迟加载2. 延迟加载的配置2.1 使用

Android WebView的加载超时处理方案

《AndroidWebView的加载超时处理方案》在Android开发中,WebView是一个常用的组件,用于在应用中嵌入网页,然而,当网络状况不佳或页面加载过慢时,用户可能会遇到加载超时的问题,本... 目录引言一、WebView加载超时的原因二、加载超时处理方案1. 使用Handler和Timer进行超