• base


    1.firebug:
    console.log(someVar);//控制台打印变量信息
    clear();//清除控制台信息
    toFixed();//去掉额外的小数部分并且将数字转换为字符串;如:var  n=1.33333; var m=n.toFixed(2);//m=1.33;
    indexof()或lastIndexof();寻找数组元素值的新方法,返回找到的数组值的索引位置,如果该值在数组中不存在,则两个方法都返回-1.
    2.在Javascript中,条件中的下列值都被视为假,其他值都为真:
      false ,0 ,空串 ,NaN(非数字) ,null ,undefined 
    3.typeof 运算符返回一个代表对象类型的字符串。
            typeof 返回值
     类型        返回值
     Undefined   undefined
     Null        object(对象)
        Boolean     boolean 
     Number      number(数字)
     String      string
     Array       object(对象)
     Object      object
    4.创建并使用数组
      方式一:
               var  myVar=new Array();//创建一个空数组
               var  myVar=new Array(1,2,3);//创建数组并初始化数组
      方式二(文本语法):
               var  myVar=[];//创建一个空数组
         var myVar=[1,2,3];//创建数组并初始化数组
         var myVar=[1,'Fred','Daphne',2,false];//创建混合存储类型的数组,不常见。
            (1)length属性可以访问数组使用长度
         (2)可以使用数组的索引来读取单独的数组元素或者为数组元素赋值.
            (3)删除数组和数组元素。delete myVar; //删除数组; delete myVar[n];//删除数组myVar的第n个元素。length值未变,该元素值被改为undefined.
      (4)添加数组元素的替代方法
             ①把数组当作栈或队列
            "栈"
         push(arg0,arg1,...,argn);//一次可以添加一个或多个参数,这些参数代表所添加的值,添加在数组的最后。
                                  //注意,如果添加的参数本身是数组,则数组原封不东的添加到数组中(也就是创建一个多维数组)
         pop();//弹栈。length减1;
         “队列”
         unshift(arg0,arg1,...,argn);//它强制新元素出现在数组的开头,必要时将现有元素向后移动。(比push()方法慢)
         shift();//从数组中删除第一个元素并返回它,所以改制可以被赋予另一个变量或者以其他方式使用.length减1;
       
       ②concat(arg0,arg1,...,argn);//该方法进行数组的连接,可以指定一个或多个参数,
                  //注意:和push()方法不同,在参数中出现的数组会被展开为单独的元素。
      (5)splice(arg0,arg1.arg2,...,argn);//从数组中间剪切或添加新元素.
                                           //参数1:表示起始位置,参数2:要删除的元素数量 ,参数三及后续的参数:可选,表示新添加的元素
    5.创建并使用对象
            方式一:
           var  obj=new Object();//创建了一个空对象;
      方式二:
           var  obj={};//创建了一个空对象;
      (1)为对象添加属性,使用格式:“属性:值”,属性之间使用逗号分隔。
            var obj={num:6,title:'complex variable types'};
           或
         var obj=new Object(num:6,title:'complex variable types');
      (2)访问对象属性或为属性重新设置
           ① obj.title//访问title属性       
        ② obj['title']//访问title属性
           ③   obj.title='new value';或obj['title']='value'//设新值
      (3)确认对象是否有某个属性
          ①使用 objName.propertyName:
               if(obj.title){//已经存在
         ...
         }
        注意:这种方法可能因为属性值被当做false处理而出现问题,例如属性值为空字符串或0等情况。
       ②使用in运算符。语法: '属性' in objctName
         if('title' in  obj ){//已经存在
         ...
         }
       ③使用typeof运算符,条件是已知属性的类型
        if(typeof obj.title == 'string'){//已经存在
        ...
        }
      (4)访问所有对象
        for...in ,语法格式:
            for(var p in  obj)
         {  //use obj[p];//
         }
      注意:首先,属性不会以任何特定顺序返回,甚至不会以对象创建时列出的顺序返回、
            其次, 根据对象不同,可能最终看到并未创建的属性(这种情况与javascript的原型继承性有关)
         第三, 必须使用数组标记法来寻找每一个对象的属性值
         最后, for...in是比较慢的一种结构,应该只用在没有其他循环可用的时候
      (5)删除对象及属性
                   delete   obj;//删除对象
                   deleted obj.title;//删除对象属性title 
    6.字符串
          (1)创建字符串
               var   str='hello'或"hello";//创建了字符串 “hello” 
            常用属性length;获取字符串的长度
       (2)字符串拆分
          charAt(index);//引用单个字符。index为该字符在字符串中的位置。默认第一个字符位置为0;
       indexOf(chars,from_start);//返回第一个找到的字符(或字符串)的索引值(位置),没找到返回-1.
                            //第一个参数:1个或多个指定字符;第二个参数:可选,表示在字符串搜索的起始位置。
       lastIndexOf(chars,from_end);//反向遍历字符串,其他和indexOf()一样。
             slice(start,end);//从字符串中取出子串 ,返回一个新字符串;
                               //第一个参数:剪切开始的位置;第二个参数:可选,剪切结束的位置。省略,则表示子串持续到字符串结束位置。  
       subString(start,end);//功能同slice()方法,不过有一些不可预期的表现
       subStr(start,Num);//功能同slice()方法;
                         //第一个参数:子串起始位置;第二参数:包含在子串里的字符数。
    7.正则表达式
        在javascript中,正则表达式是一种特殊类型,和Number,String,Date一样,和javascript中的大部分值类型相同。
         (1)创建正则表达式
           方法一:var  regexp='pattern';//模式上不要加引号,结束斜杠之后,可以设置影响正则表达式表现的标志(如i,它使模式大小写不敏感)
              如:var zip=/^d{5}(-d{4})?$/ ;//匹配美国邮政编码的模式
               var letter=/[A-Za-z]/i;//验证一个大小写不敏感的字面
        方法二:创建一个类型为RegExp的新对象.容易造成其他语法问题,很少使用此方法
      (2)正则表达式函数
               有了正则表达式对象之后,可以使用它进行模式和字符串的比较
                   RegExp对象的test()
             RegExp对象的exec()
             String对象的search()
             String对象的match()
       假定已创建了正则表达式对象r,打算测试字符串s,可以如下使用:
         r.test(s);//测试正则表达式最常用的方法,最常用,速度最快
         r.exec(s);//返回找到的匹配字符串
         s.search(r);使用方式与test类似,表现类似indexof(),如果部分或者整个字符串匹配正则表达式,返回匹配开始的位置,不匹配返回-1
         s.match(r);//基本用法类似exec(),但在使用分组时不同。
      使用举例:
          var zip=/^d{5}(-d{4})?$/;
       zip.test('12345');//返回true
       zip.test('12345-6789');//返回true
       zip.test('12345b');//返回false
        
          
            
        
       
       
       
               
               
               
               
               
               

  • 相关阅读:
    【目录】循序渐进学.Net Core Web Api开发系列
    UML各种图总结-精华
    UML各种线的含义
    最新10大Python面试常问的问题,60%的人都不会
    Java—线程池ThreadPoolExecutor案例详解,高薪必备
    HashMap 的 7 种遍历方式与性能分析,高薪必学
    DelayQueue核心源码解析,Java面试必学
    Spring源码-循环依赖,Java架构师必学
    JAVA编程思想,去掉别扭的if,自注册策略模式优雅满足开闭原则,80%的人都不知道
    用Python实现植物大战僵尸游戏,很酷
  • 原文地址:https://www.cnblogs.com/xiaowei-blog/p/3949667.html
Copyright © 2020-2023  润新知