javaScript函数

Posted ```飞翔的翅膀```

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javaScript函数相关的知识,希望对你有一定的参考价值。

函数的定义方式

  1. 函数声明式:
function 函数名() 
   //...

特点:无论在函数定义前,还是函数定义后调用,都能执行
为什么都能执行???
因为函数声明方式:函数提升
  1. 函数表达式
var 变量名=function() 
   //....

变量名()

特点:只能在函数定义后调用,才能执行

this指向

  1. 在全局调用函数,函数中的this指向window
function fn()  //this === window

javascript异步

  1. 同步与异步
    1. 同步:符合咱们人的认知习惯,一行一行往下按照代码顺序执行,如果前面代码没有执行完,不会执行
      缺点:容易导致代码阻塞
    2. 异步:代码不会按照顺序执行,如果前面代码没有执行完,也会执行后面代码
      缺点:阅读代码有一定成本,包括调试
  2. 异步的应用场景
    1. 数据请求(ajax)
    2. DOM操作:例如:点击事件
    3. 定时器操作:setTimeout,setInterval
  3. 管理异步
    1. 回调函数
      缺点:容易导致回调地狱
      Promise
为了解决回调地狱问题,提出用Promise来管理异步代码

//定义
function request() 

 return new Promise((resolve,reject)=>
   console.log(111)
  if(满足) 
    resolve(返值)  //用.then()接收
  else 
    reject(返值)  //用.catch接收
  
)

//调用
request().then(res=>
).catch(error=>
)

async/await

async/await:用同步的方式来管理异步代码
async写在function关键字前面
async function fn() 

await必须要结合async使用
async function request() 
   await getList()

await后面能跟什么值?? await后面只可以跟做任意值 
new Promise代码是同步的
.then是同步的
但.then中的回调函数是异步的

以上是关于javaScript函数的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript-Runoob-JS函数:JavaScript 函数定义

javascript函数可以带参数吗

JavaScript-Runoob-JS函数:JavaScript 函数调用

JavaScript函数

JavaScript-Runoob-JS函数:JavaScript 函数参数

javascript怎么让函数执行完毕再执行