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更容易阅读
 
014、目前所了解的转义字符
 
\" 
\'
\n  表示换行
\t  tab键
 
015、while需要注意的地方
 
  1、初始化一个变量
 
  2、while()括号里面是判断条件
 
  3、除了在执行相应的代码以外还要在代码块中改变循环体的条件变量===》在{}里面改变
 
016、do-while循环的使用及while的区别
 
  do-while() 无论条件是否成立至少执行一次,和while规则一样,唯一不同的是do{}while会先执行一次(先执行后判断
 
017、谈谈你对for循环的理解
 
for(第一个是:循环变量也是初始化变量;第二个是判断循环条件;第三个是改变循环变量){
     ....代码块
}
 
循环变量: 用于控制循环是否结束的变量(给变量赋初始值,只执行一次)
循环条件: 判断循环是否继续(每次都会执行)
改变循环变量:用于改变循环变量(每次都会执行)
 
018、while和for的区别
 
  for循环是知道了循环次数,while是不知道循环次数
 
  for限定了循环次数
 
  while是条件循环
 
019、break和continue  return的区别
 
  continue:continue只是中止本次循环,接着开始下一次循环 ,只能出现在循环中
 
  break:break用于完全结束一个循环,跳出循环体 不在执行break下面的代码,只能出现在选择或者循环中
 
  return:返回函数的值,不在执行return下面的代码,只能出现函数中
 
 
020、让函数执行有哪几种方式
 
  1、js是基于事件驱动的语言、因此可以通过js的事件来调用函数让函数执行
 
  2、直接写函数名加()
 
  3、立即执行函数。在字面量函数后面({}后面加())

原生js大总结二的更多相关文章

  1. 原生js大总结九

    81.ES6的Symbol的作用是什么?   ES6引入了一种新的原始数据类型Symbol,表示独一无二的值   82.ES6中字符串和数组新增了那些方法   字符串       1.字符串模板    ...

  2. 原生js大总结十

    91.ajax的优点     a.提高运行效率   b.提高用户体验,让多件事情同时发生   c.在不刷新页面的情况下可以对局部数据进行加载和刷新       92.ajax请求的流程   1.创建通 ...

  3. 原生js大总结十一

    101.请简述prototype.__proto__ constructor三者的关系   1.prototype:     每一个函数都有一个prototype这个属性,而这个属性指向一个对象,这个 ...

  4. 原生js大总结八

    071.如何组织事件冒泡   利用事件对象属性:stopPropagation 和 cancelBubble   stopPropagetion是一个方法:e.stopPropagetion();   ...

  5. 原生js大总结七

    061.如何获取父级节点.上一个子级节点.下一个子级节点    nextElementSibling  后一个兄弟元素  (如果没有是null)    previousElementSibling   ...

  6. 原生js大总结四

    031.数组常用的一些方法   1.push: 在数组最后添加一个或者多个元素,返回添加后数组的长度   2.pop: 从数组最后取出一个元素,返回的是数组的最后一个元素(取出的元素)   3.uns ...

  7. 原生js大总结五

    041.在js中如何用方法将10进制的字符转换成16进制和8进制   数字.toString(16) 数字.toString(8)     042.如何创建时间对象   new Date()   04 ...

  8. 原生js大总结三

    021.定义函数的几种方式   1.关键字函数:function fnName(){};   2.字面量函数:var fn = function(){};   3.构造函数:var fn = new ...

  9. 原生js大总结一

    001.浅谈堆和栈的理解?   js变量存储有栈存储和堆存储,基本数据类型的变量存储在栈中,引用数据类型的变量存储在堆中 引用类型数据的地址也存在栈中   当访问基础类型变量时,直接从栈中取值.当访问 ...

随机推荐

  1. win10 WmiPrvSE.exe WMI Provider 占用CPU过高的问题

    重启 Windows Management Instrumentation 服务 重启 WMI service.   + ,输入: "services.msc" ,按 . 在 服务 ...

  2. ArcGIS 空间查询一例

    ISpatialFilter spatialFilter = new SpatialFilterClass(); spatialFilter.Geometry = Polygon ;//设置用于筛选几 ...

  3. 从Java到C++——常量的使用规则

    常量是一种标识符,它的值在执行期间恒定不变.C语言用 #define来定义常量(称为宏常量). C++ 语言除了 #define外还能够用const来定义常量(称为const常量). 一.为什么须要常 ...

  4. 49.Node.js RESTful API

    转自:http://www.runoob.com/nodejs/nodejs-express-framework.html 什么是 REST? REST即表述性状态传递(英文:Representati ...

  5. require和import的使用

    一.前言 ES6标准发布后,module成为标准,标准的使用是以export指令导出接口,以import引入模块,但是在我们一贯的node模块中,我们采用的是CommonJS规范,使用require引 ...

  6. split---将文件分割成多个小文件

    split命令可以将一个大文件分割成很多个小文件,有时需要将文件分割成更小的片段,比如为提高可读性,生成日志等. 选项 -b:值为每一输出档案的大小,单位为 byte. -C:每一输出档中,单行的最大 ...

  7. 相似group by的分组计数功能

    之前同事发过一个语句,实现的功能比較简单,相似group by的分组计数功能,由于where条件有like,又无法用group by来实现. SELECT a.N0,b.N1,c.N2,d.N3,e. ...

  8. eclipse-ubuntu14.04图标替换不掉的问题

    今天安装14.04的时候,遇到了一个问题.就是eclipse安装好以后,发现需要配置ADT,老是配置失败.后来实在没有办法了,所以就把这个eclipse跟删除了(当时它并没有安装,而是仅仅解压以后双击 ...

  9. List-ArrayList 使用

    今天优化一段代码,如下 int num = 0; boolean skipAppend = false; int types_ext1[] = new int[] { ModuleType.TYPE_ ...

  10. javascript创建对象的方法--构造函数模式

    javascript创建对象的方法--构造函数模式 一.总结 构造函数模式作用和不足 1.作用:解决工厂模式不是用new关键字来创建对象的弊端 2.作用:解决工厂模式创建的实例和模型没有内在联系的问题 ...