面试常问问题
程序员文章站
2022-07-09 12:47:58
1、值类型与引用类型区别 2、装箱拆箱 装箱:值类型转换成引用类型。将值类型从栈上拷贝到堆上,将地址返回; 拆箱:引用类型转换成值类型。将引用类型的数据拷贝到栈上。 3、JS遍历 for语句:和c#一样 in语句: .each: ......
1、值类型与引用类型区别
值类型 | 引用类型 | |
存储方式 | 直接存储值本身 | 存储数据的引用,数据存在数据堆上 |
内存分配 | 分配在栈上 | 分配在堆上 |
内存回收 | 用完直接回收 | 不会直接加收,通过gc机制回收 |
实例分配 | 一般是存在栈上如果是类的属性也有可能随类存在堆上 | 一定分配在堆上 |
效率 | 不需要地址转换效率高 | 需要进行地址转换效率低 |
赋值操作 | 直接创建对象 | 创建对象的引用 |
2、装箱拆箱
装箱:值类型转换成引用类型。将值类型从栈上拷贝到堆上,将地址返回;
拆箱:引用类型转换成值类型。将引用类型的数据拷贝到栈上。
3、js遍历
for语句:和c#一样
for (var i=0;i<cars.length;i++) { document.write(cars[i] + "<br>"); }
in语句:
var person={fname:"john",lname:"doe",age:25}; for (x in person) { txt=txt + person[x]; }
.each:
$("li").each(function(){ alert($(this).text()) });
上一篇: vue项目中取消axios请求