zoukankan      html  css  js  c++  java
  • 个人复习JavaScript重点(总结一)

    1.变量

      声明提前

      按值传递 -->'赵氏孤儿'

      var n=100; var m=n; m--;     -->n=100

      var arr=[1,2,3]; var arr1=arr;  arr1.push(4);  -->arr=[1,2,3,4]

    2.数据类型

      原型:值直接保存在变量本地的内容

      引用:值保存的是变量的地址

        typeof null;-->object      typeof  undefined;-->undefined

    3.数据类型转换

     <隐式转换>

      1.算术运算:-->默认转为数字

        字符串(前提确定内容都是数字)-=0   -->   转为Number类型

      2.关系运算:默认转为数字;两个字符串比较,按字符比较其unico值

      3.逻辑运算:默认转为Boolean类型

     <显示/强势转换>

      1.转为String类型

        x.toString()  -->   不能用于null与undefined

                     String()  -->   是万能的

        错误类型:  var n=null; console.log(n.toString());

                 var n=defined;console.log(n.toString());

                                上述两种会报错

               包装类型: var n=100; console.log(n.toString());  -->  new Number(n).toString();

                              null与undefined不可以new 

      2.转为Number类型

        Number(x);        

          parseInt(str)/parseFloat(str)

      3.转为Boolean类型

        Boolean(x);    

        !!x

        NaN,0,null,undefined,"",   -->这5中转为false

    4.运算符

      1.算术运算符   -->     +,-,*,/,%,

        /:  不为0的数 / 0 =  Infinity   ;    console.log(0/0)  --  >NaN

        %: 判断能否整除  ;  限制某个值不能超过某个数

      2.关系运算符  

        > , < , >= , <= ,  !=     -->  自动进行类型转换

        === ,!==                  -->   对数据类型也进行比较,比较null与undefined

        NaN != 任何值    --> true

        isNaN(n)   -->   返回布尔值

        1.var n=" "; console.log(isNaN(n));   -->  false

        2.console.log(Number(" "));   -->  0     Number(空字符串)=0

           console.log(Number("   1   "));  -->  1

      question:  如何判断输入的内容是否为数字

        使用unicoed  /  正则表达式

      3.逻辑运算符

        &&   ||    !

        利用&&  -->   条件&&操作;

        利用||   -->   value1 ||  value2;

        console.log(4&&5);   -->5                                          console.log(0&&5);        -->0   ?

        console.log(4||5);    -->4                                           console.log(0||5);         -->5

      4.位运算

        >> 右移  ,    <<   左移     二进制移动

      5.扩展赋值表达式

        +=  , -= , *= , /= , %= 

      6.三目/三元/条件运算

        条件?操作:

        条件?操作:

        条件?操作:

        ...?... : 默认值;

    4.招数

      1.分支结构:

       一个条件一件事,满足则做

        简单: 条件 && 操作

        复杂:if(...){......}     建议即使一句话也不要省略{}

        一个条件两件事,满足做事件1,不满足做事件2

        简单:三目运算

        复杂:if(...){}else{}

        多个条件,多件事,多选一

        简单:三目运算

        复杂:if(...){...}else if(...){...}...

        等值比较:switch case

      2.循环结构

       for(;;){};  while(){}  ;  do{}while()

        死循环:for(;;);  while(true) 

      question:九九乘法表:

                                               //行row<=9,row=1 row++
                                               for(var row=1;row<=9;row++){
                                                  for(var i=1,line="";i<=row;line+=str,i++){
                                                     var r=i*row;
                                                     r=r<10?r+"; ":r+";";
                                                     var str=i+"x"+row+"="+r+" ";
                                                  }
                                                  console.log(line);
                                                }

    5.函数

      对象:函数名指向函数对象的变量

              将变量作为参数传入函数时,是按值传递

      作用域:全局作用域

          函数作用域

      全局函数:

        以前没搞懂JS的全局函数,全局函数和window对象的函数不一样。
        全局函数不属于任何一个内置对象。

        JS包含以下7个全局函数,用于一些常用的功能:escape(),eval(),isNan(),isFinite(),parseFloat(),parseInt(),unescape();

        escape(string),对string进行编码,这样就可以在所有计算机上读取该字符串。

        该方法不会对 ASCII 字母和数字进行编码,也不会对下面这些 ASCII 标点符号进行编码: * @ - _ + . / 。其他所有的字符都会被转义序列替换。

        

        

      

        

  • 相关阅读:
    在vue中引入layer弹框的简易方法
    in ./node_modules/qs/lib/index.js Module build failed: Error: ENOENT: no such file or directory, o
    vue路由传参的三种基本方式
    跳转路由时传参,elementUI的table表格点击对应行,获取对应行的数据;更改el-table头部样式
    用Vue写移动端时有哪些UI框架
    1月25日学习日志
    1月22日学习日志
    1月21日学习日志
    1月20日学习日志
    1月19日学习日志
  • 原文地址:https://www.cnblogs.com/zmr2520/p/4943999.html
Copyright © 2011-2022 走看看