• 微信公众号:美女很有趣。 工作之余,放松一下,关注即送10G+美女照片!

开发技术 开发技术 3天前 5次浏览

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

同步阻塞 异步非阻塞

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

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

2.执行代码

 var a =1
 function f(a) {
   a = a + 1
   console.log(a)//2
 }
 f(a)
 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])//2
    }
    f(a)
    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>


程序员灯塔
转载请注明原文链接:
喜欢 (0)