1.什么是同步什么是异步

同步阻塞 异步非阻塞

同步方法调用一旦开始,调用者必须等到方法调用返回后,才能继续后续的行为。

异步方法调用更像一个消息传递,一旦开始,方法调用就会立即返回,调用者就可以继续后续的操作。而异步方法通常会在另外一个线程中,“真实”地执行着。整个过程,不会阻碍调用者的工作

2.执行代码

 var a =1
 function f(a) {
   a = a + 1
   console.log(a)
 }
 f(a)//2
 console.log(a)//1

此时函数中的a为形参a,然而只有this.a才是指向声明的a 所以声明的a并不会增加 

3.执行代码

回答这道题时我曾经想到学习数据结构时,传入数组后会改变原数组,当时回答是还是挺懵的。

    var a =[1,2]
    function f(a) {
        a[0] = a[0] + 1
        console.log(a[0])
    }
    f(a)//2
    console.log(a[0])//2

形参中的浅拷贝与深拷贝:

上一题中

function f(a){                     funcation f(a){
  a = a+1                =           let a = a
  console.log(a)         =           a = a+1  console.log(a)
}                                  }

对于简单类型引用,function中会对a进行深拷贝 会在内存开辟一个新地址存放1

 

然而这题中对于复杂类型引用,只是会把函数中的形参地址指向声明中的a,因此函数会改变原数组

所以f函数中的a[0]+1,在函数外打印时也应该是2

4.块级元素,行级元素,空元素

行内元素有:a b span img input select strong

块级元素有:div ul ol li dl dt dd h1 h2 h3 h4 h5 h6 p

空元素,即没有内容的HTML元素。空元素是在开始标签中关闭的,也就是空元素没有闭合标签

<br><hr><img><input><link><meta>

posted @   想学前端的小李  阅读(30)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示