首页
学习
活动
专区
圈层
工具
发布

【JavaScript】函数 ④ ( 函数返回值 | 函数返回值语法 return 关键字 | 函数默认返回值 undefined )

一、JavaScript 函数返回值 1、函数返回值引入 JavaScript 函数 可以 实现某种特定的功能 , 执行完毕后 , 可以返回一个 " 返回值 " ; 当 函数 被调用执行任务完毕时 ,..." 返回值 " 会被返回给调用者 ; 如果 函数 中没有明确 使用 return 关键字 返回 " 返回值 " , 那么函数会默认返回undefined 值 ; 2、函数返回值语法 在 JavaScript...中 , 函数 返回值是 通过 return 语句实现 , 在函数体 中 使用 return 语句 指定函数返回的值 , 使用 return 语句后 会立即终止函数的执行 , return 返回值 语法如下...: function functionName(parameters) { // 函数体 return expression; // 返回值 } 在 JavaScript 中的返回值类型...> 执行结果 : 打印出来的 函数返回值 是 undefined 未定义值 ; 4、函数默认返回值 在下面的代码中 , add 函数 中 使用 return 关键字 返回返回值

2K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    剑指offer - 包含min函数的栈 - JavaScript

    题目描述:定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的 min 函数(时间复杂度应为 O(1))。...题目描述 定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的 min 函数(时间复杂度应为 O(1))。...解法 1: 暴力法 直接遍历栈得到最小的元素,但理论上 min 函数的时间复杂度是 O(N),不符合题目要求,但可以 ac。...他们之间有一种对应关系:辅助栈的栈顶元素,就是原栈所有元素的最小值。...对原栈和辅助栈的处理过程如下: 元素压入原栈的时候,如果辅助栈为空,或者元素 的栈顶元素,那么将元素也压入辅助栈 元素弹出原栈的时候,如果元素等于辅助栈的栈顶元素,辅助栈也弹出元素 这里的判断条件是元素

    66110

    JavaScript中的Promise

    Promise对象的状态改变,只有两种可能: 1.从pending变为fulfilled 2.从pending变为rejected。 这两种情况只要发生,状态就凝固了,不会再变了。...当其中任一种情况出现时,Promise 对象的 then 方法绑定的处理方法(handlers )就会被调用(then方法包含两个参数:onfulfilled 和 onrejected,它们都是 Function...这个新的promise对象在触发成功状态以后,会把一个包含iterable里所有promise返回值的数组作为成功回调的返回值,顺序跟iterable的顺序保持一致;如果这个新的promise对象触发了失败状态...当这个回调函数被调用,新 promise 将以它的返回值来resolve,否则如果当前promise 进入fulfilled状态,则以当前promise的完成结果作为新promise的完成结果。...如果Promise 对象状态变为resolved,则会调用then方法指定的回调函数;如果异步操作抛出错误,状态就会变为rejected,就会调用catch方法指定的回调函数,处理这个错误。

    1.4K20

    JavaScript: 结合 async 异步函数 - 提高 Promise 的易用性

    前言 前篇写了 promise 的使用的基本介绍,没看的朋友可以先预览一下如何用 Promise 自定义一个 GET 请求的函数 异步函数怎么工作的?...当您 await 某个 Promise 时,函数暂停执行,直至该 Promise 产生结果,并且暂停并不会阻塞主线程。 如果 Promise 执行,则会返回值。...如果 Promise 拒绝,则会抛出拒绝的值。...异步函数返回值 无论是否使用 await,异步函数都会返回 Promise。该 Promise 解析时返回异步函数返回的任何值,拒绝时返回异步函数抛出的任何值。...直接使用 promise function logInOrder(urls) { // 先使用我们上面写好的 fetch 函数获取所有的数据 const textPromises = urls.map

    86640

    理解 JavaScript 中的 Promise

    Here's the translation of the provided blog post:JavaScript 中的 Promise 是处理异步操作的强大功能。...返回的 Promise 会被解决为输入 Promise 的解决值数组,顺序与输入的 Promise 一致。...如果任何一个输入的 Promise 被拒绝,整个 Promise.all 将会被拒绝,拒因为第一个被拒绝的 Promise 的原因。...当您对第一个被解决的 Promise 的结果感兴趣时,可以使用 Promise.race。每种方法都有其适用场景,了解它们的差异可以让您为特定情况选择最合适的方法。...无论您需要所有 Promise 成功,想要独立处理成功和失败,还是对第一个被解决的 Promise 感兴趣,JavaScript 的 Promise 方法都提供了处理异步操作的灵活工具。

    36410

    关于 JavaScript 中的 Promise

    这使得异步方法可以像同步方法一样返回值:异步方法不会立即返回最终值,而是返回一个promise,以便在将来的某个时间点提供该值。...执行器函数在创建Promise时立即执行。它接受两个参数:resolve和reject。这两个参数是由JavaScript运行时提供的函数,用于分别解决或拒绝Promise。...在Promise的构造函数中,我们传递了一个执行器函数,这个函数接受两个参数:resolve和reject,它们是由JavaScript引擎提供的回调函数。...Part 2创建 Promise 后,可以使用该方法附加一个回调函数,在JavaScript中,Promise对象的.then()方法用于附加一个或多个回调函数,以处理Promise对象的解析值(resolved...对于解决的 Promise,结果对象包含 status 属性为 'fulfilled' 和 value 属性包含解决的值;对于被拒绝的 Promise,结果对象包含 status 属性为 'rejected

    1.2K62

    JavaScript的异步操作(Promise)

    一、Promise 是什么? Promise 是一个用于绑定异步操作与回调函数的对象,让代码更易读且更合理。 1、简单实例 --- 二、语法说明 1、运行规则 不同于传统的回调, then 关联的函数,会在异步操作完成后执行;如果有多个 then,那么也会依次调用,除非其中有调用...--- 四、async / await 1、概念说明 async / await 建立在 Promise 之上,使异步代码更易于编写和阅读,他们是 ECMAScript 2017 JavaScript版本的新语法...函数声明之前加上 async 关键字,就变成了异步函数了,返回值为promise。...await 只有用于异步函数才起作用,基于 promise 的函数之前加上 await ,代码会在此行暂停,直到 promise 操作完成,当然其他代码可以继续执行。

    1.5K51

    JavaScript: 从 Event Loop 到 Promise (常见问题分析)

    写在最前面 promise 作为前端常用的工具,今天从底了解一下 promise 的使用和基础知识。 其中有出入或者错误的地方希望朋友们指出。...阮一峰老师的 async 教程 上面提到了一个异步的问题,我们前端er都知道 JavaScript - 是单线程的,如果存在多个任务的时候,就会有任务队列进行排队,然后一一执行任务。...不着急介绍 promise 的详情,首先我们从最开始的同步和异步讲起: 一、同步和异步 1.1 同步 简单的理解 如果函数在返回结果的时候,调用者能够拿到预期的结果(即使会等待但是依然能拿到预期的结果...总结一点:JavaScript是单线程的,但是浏览器不是单线程的。一些I/O操作,定时器的计时和事件监听是由其他线程完成的。...new promise 执行完毕,回调函数cb() 进入Event Queue。 执行 打印 script end; 主线程从Event Queue读取回调函数 cb 并执行。

    79530

    JavaScript中的Promise使用详解

    那么如何解决地狱回调,保持我们的代码简短,这时Promise就出场了,Promise对象可以理解为一次执行的异步操作,使用Promise对象之后可以使用一种链式调用的方式来组织代码;让代码更加的直观。...*/){ resolve(value); } else { reject(error); } }); Promise构造函数接受一个函数作为参数,该函数的两个参数分别是resolve...Resolve函数的作用是,将Promise对象的状态从“未完成”变为“成功”(即从 pending 变为 resolved),在异步操作成功时调用,并将异步操作的结果,作为参数传递出去; Reject...函数的作用是,将Promise对象的状态从“未完成”变为“失败”(即从 pending 变为 rejected),在异步操作失败时调用,并将异步操作报出的错误,作为参数传递出去。...Promise实例生成以后,可以用then方法分别指定resolved状态和rejected状态的回调函数。

    1.7K1513

    JavaScript的异步编程之Promise

    中有没有异步操作,then方法中的回调函数依然会进入回调队列中排队,会等同步代码执行完之后才会执行 用Promise写一个请求函数 function ajax (url) { return new...如果then方法中的回调函数返回了值,则会给下一个then方法的回调函数传递这个返回的值,如果没有返回那么默认返回的就是undefined总结一下就是 Promise对象的then方法会返回一个全新的Promise...对象 后面的then方法就是在为上一个then返回的Promise注册回调 前面的then方法中的回调函数的返回值回作为后面then方法回调的参数 如果回调中返回的是Promise, 那后面的then方法的回调会等待他的结束...捕获异常 onRejected 回调会在Promise执行异常或者抛出的异常时触发, 捕获异常有两种方式,第一种, then(成功处理的回调函数, 异常处理的回调函数) 在then方法中传递两个回调函数...这个时候Promise.all返回的Promise对象拿到的结果是一个数组,这个数组中包含了每一个Promise返回的结果。

    75870

    函数的变量+返回值

    函数的变量: 局部变量 和 全局变量 Python中的任何变量都有特定的作用域 在函数中定义的变量一般只能在该函数内部使用,这些只能在程序的特定部分使用的变量我们称之为局部变量 在一个文件顶部定义的变量可供文件中的任何函数调用...,这些可以为整个程序所使用的变量称为全局变量 (1)、局部函数: #!...输出结果: {'y': 1, 'x': 11} 函数的返回值: 函数被调用后会返回一个指定的值 函数调用后默认返回None 指定return 来返回一个值 返回值可以是任意类型 一旦return执行后...设计一个程序,从终端接收10个数字,并使用自己编写的排序函数,对10个数字排序后输出 def sss(): n = 0 list1 = [] while n 函数,接收一个英文单词,从文件中查询该单词的汉语意思并返回

    7K40

    【javascript】异步编年史,从“纯回调”到Promise

    这就是所谓的阻塞啊 让我们再想一想doOtherThing因为“同步”造成“阻塞”的话会有多少麻烦: doOtherThing()里面包含了这些东西: 这个简略的函数代表了它你接下来页面的所有的交互程序...Promise是一个可以包含异步操作的对象 new Promise(function() {       /* 异步操作  */ } 2.其次, 这个对象拥有自己的状态(state),可以分别用来表示异步操作的...当new 一个Promise对象的时候, 我们能接收到两个方法参数: resolve和reject, 当调用 resolve方法的时候,会把Promise对象的状态从Pending变为Fulfilled...(表示异步操作成功了),当调用 reject方法的时候, 会把Promise对象的状态从Pending变为Rejected,表示异步操作失败了, 而如果这两个函数没有调用,则Promise对象的状态一直是...那个率先改变的 Promise 实例的返回值,就传递给p的回调函数。 最后讲个小故事 曾经我和小伙伴们搞比赛,合并代码都是通过QQ传代码文件然后手动合并,经常会为代码的管理不胜其烦, 遇到诸多问题。

    1.3K80

    JS|函数的返回值

    我们先来看一组代码 function kunkun(aru){ console.log(aru)}kunkun('打篮球') 这个看似能输出结果,实则是在逻辑上是不合理的,我们函数是做某件事或者实现某种功能...所以,接下来我会介绍一种逻辑更严谨的代码。 解决方案 return语句 有的时候,我们希望函数将返回值返回给调用者,此时通过使用return语句就可以实现。...函数的返回值格式 function 函数名(){ return 需要返回的结果;}函数名(); 函数只是实现某种功能,最终的结果需要返回给函数的调用者。是通过return来实现的。...只要函数遇到return就会把后面的结果,返回给函数的调用者。...num2){ return num1 + num2;}console.log(sum(1,2)) 结果输出为:3 由此可知,不要在函数的内部输出结果,应该return给函数的调用者。

    13.8K10
    领券