https://docs.qq.com/doc/DU3lEREp6cXpnSEpK?_t=1609850771316(嘻嘻网址)
    https://github.com/febobo/web-interview (一水网址)
    https://juejin.cn/post/6844903636271644680#heading-40(二水网址)
    https://juejin.cn/post/6844903976693940231#heading-65(三水网址)
    顶尖的react 组件库 Material-UI

    1. //这个就是值传递,拷贝了副本
    2. // 当x 是基本数据类型的时候
    3. //1.obj 在堆空间的a属性 指向了 栈空间的 x ?然并卵 哦 ,首先x会复制一份副本出来 堆空间obj的a属性其实就是引用了x 复制出来的副本,所以当 栈空间的x的值 改变的时候,obj的a属性的值还是没有改变。
    4. var x =20;
    5. var obj ={a:x};
    6. x ='憨憨';
    7. console.log(obj) // {a:20};
    8. // 当 变量是 数组的时候
    9. var test = [1,2,3];
    10. var testObj = {b:test};
    11. test[0] =100;
    12. console.log(testObj) // {b:[100,2,3]}
    13. //当变量是 对象的时候
    14. var y = {c:123,d:345}
    15. var obj = {z:y};
    16. y.c= 'string';
    17. console.log(obj) // {z:{c:'string',d:345}}
    1. // 当x 是基本数据类型的时候
    2. var x =20;
    3. var obj =[1,2,3,44];
    4. x ='憨憨';
    5. console.log(obj) // [1,2,3,44];
    6. // 当 变量是 数组的时候
    7. var test = [1,2,3];
    8. var testObj = [4,5,6,test];
    9. test[0] =100;
    10. console.log(testObj) // [4,5,6,[100,2,3]]
    11. //当变量是 对象的时候
    12. var y = {c:123,d:345}
    13. var obj =[1,2,3,y];
    14. y.c= 'string';
    15. console.log(obj) //[1,2,3,{c:'string',d:345}]