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. Saltstack的API接口与调用方式

     saltstack看起来是成为一个大规模自己主动化运维和云计算管理的一个框架,类似于SDK,并非像puppet仅仅成为一个工具.基于良好设计的API和清楚的思路,让salt的二次开发变得非常easy ...

  2. 【HDU】5249-KPI(线段树+离散化)

    好久没写线段树都不知道怎么写了... 很easy的线段树二分问题 #include<cstdio> #include<set> #include<queue> #i ...

  3. poi excel自己主动转换成javabean 支持引用类型属性二级转换

    近期项目须要使用excel导入功能.导入学生的时候须要指定所在班级,使用excel一次性导入! 将曾经的代码改改支持属性内引用类的转换. 測试对象为User对象,javabean结构: private ...

  4. RvmTranslator6.5 is released

    RvmTranslator6.5 is released eryar@163.com RvmTranslator can translate the RVM file exported by AVEV ...

  5. RvmTranslator6.1 - Attribute List

    RvmTranslator6.1 - Attribute List eryar@163.com 1. Introduction RvmTranslator can translate the RVM ...

  6. 项目: 基于Python socket模块实现的简单 ftp 项目:

    需要 自己创建一个 info 文件 用来存储用户信息 服务器: import socket import pickle import struct import os import time ''.s ...

  7. EF中执行Sql语句

    Entity Framework是微软出品的高级ORM框架,大多数.NET开发者对这个ORM框架应该不会陌生.本文主要罗列在.NET(ASP.NET/WINFORM)应用程序开发中使用Entity F ...

  8. vue组件中 IS 用法

    //html <link rel="stylesheet" href="http://www.jq22.com/demo/animate-141106223642/ ...

  9. 【Hello 2018 B】Christmas Spruce

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 写个dfs看看是不是每个节点都有3个叶子节点就可以了. [代码] #include <bits/stdc++.h> us ...

  10. JNDI学习总结(1)——JNDI入门

    JNDI是 Java 命名与目录接口(Java Naming and Directory Interface),在J2EE规范中是重要的规范之一,不少专家认为,没有透彻理解JNDI的意义和作用,就没有 ...