js基础数据类型及堆栈

001、浅谈堆和栈的理解?
 
js变量存储有栈存储和堆存储,基本数据类型的变量存储在栈中,引用数据类型的变量存储在堆中 引用类型数据的地址也存在栈中
 
当访问基础类型变量时,直接从栈中取值。当访问引用类型变量时,先从栈中读取地址,在根据地址到堆中取出数据
 
002、js中的数据类型分为哪几类
 
基本数据类型:number string undefined null boolean
 
引用数据类型:Object
 
003、js中的强制类型转换与隐式类型转换
 
隐式类型转换:==    !=      -     *      /      %      *=        /= -=    %=    
 
强制类型转换:Number     parseInt():取整转换         parseFloat()
 
004、 javascript三大部分组成
 
1、ECMAscript====》它是一种规范 造一架汽车------》发动机   js的一种规范
 
2、BOM :browser Object Model===>   浏览器对象模型
 
3、DOM : document===>  文档对象模型
 
005、undefined 和null的区别?先记住看不懂的会讲的
 
null是一个表示"无"的对象,转为数值时为0;undefined是一个表示"无"的原始值,转为数值时为NaN。
 
undefined:
(1)变量被声明了,但没有赋值时,就等于undefined。
(2) 调用函数时,应该提供的参数没有提供,该参数等于undefined。
(3)对象没有赋值的属性,该属性的值为undefined。
(4)函数没有返回值时,默认返回undefined。
 
null:
(1) 作为函数的参数,表示该函数的参数不是对象。
(2) 作为对象原型链的终点。
 
006、谈谈你对NaN的理解
 
a、Not a Number  不是一个数字
 
b、NaN仅仅代表不是一个数字,自身和自身都不相等(NaN != NaN)
 
c、如何判断NaN    isNaN===>如果是NaN,返回true,否则返回false    Number.isNaN( )
 
d、NaN的数据类型是number
 
007、说下i++与++i之间的区别
 
i++:  先使用,在加1
++i;  先加1,在使用
 
008、 javascript转换成false的值有哪些?
 
0  ''  null  undefined  false
 
009、null 、 true   false转换成数字的值都是多少
 
false如果转换成一个数字的话是0
 
true如果转换成一个数字的话就是1
 
null如果转换成一个数字的话就是0
 
010、javascript能够转换为true的值有哪些?
 
非0的数字  非空的字符串   true  非空的对象  
 
011、if语句的优化
 
1、把次数多的条件和执行结果放到最前面
 
2、减少第一次无用的判断,可以用嵌套判断
 
3、判断语句禁止出现三次嵌套
 
 
012、谈谈你对switch的理解
 
1、switch的括号里面放的是一个变量
 
  2、case相对应的值是关于这个变量的一个值
 
3、switch里面的这个变量和case里面这个变量不会进行隐式类型的一个转换,而是进行了恒等比较。所以一定要注意这个变量和这个case里面的值是不是一个类型
 
4、关于switch里面的case会有一个穿透效果,这个效果有的时候会给我们带来好处(详情请看最后一个案例),有的时候会给我们带来坏处,如果不需要这种穿透效果的时候加break
 
5、swicth里面如果这个变量没有匹配到case里面这个值,那么就需要返回一个信息。所以在case的末尾一定要加上一个default;这样既给用户的体验比较完美,另一方面对代码的今后维护也有很大的帮助
 
6、比较的值是固定值
 
013、if和swicth的应用场景
 
 if :
            1、具体的值进行判断
            2、区间的判断
            3、对运算的结果是boolean类型表达式进行判断  true   false
 
switch:
            1、对具体的值进行判断
            2、值的个数是固定的
 
            对于几个固定的值判断,建议使用switch 语句。因为switch 语句会将具体的答案都加载进内存,效率相对高一点
            基于代码的可读性:如果条件较少时,if-else容易阅读,而条件较多时switch更容易阅读
 
017、目前所了解的转义字符
 
\" 
\'
\n  表示换行
\t  tab键
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

猜你喜欢

转载自www.cnblogs.com/BLOGZR/p/9434999.html
今日推荐