zoukankan      html  css  js  c++  java
  • js中级小知识3

    函数:

      函数在调用的时候,会形成一个私有作用域,内部的变量不会被外面访问,这种保护机制叫闭包。这就意味着函数调用完毕,这个函数形成的栈内存会被销毁。

    有些时候我们不希望他被销毁。

      函数归属谁跟它在哪调用没有关系,跟在哪定义有关。

    Fn()调用完毕后得到的是一个匿名函数,但是这个函数在fn这个作用域下定义的,所以这个匿名函数内部的变量在fn作用域下查找。这种写法可以使函数内部的变量不被销毁。

    基类Object的子类有

      Function    Array     Number  Boolean          String          Date       Math     RegExp

      函数          数组           数字   布尔    字符串  日期     算数        正则    都是类。本质是函数。

    String类

    定义字符串的方法

    var st=new String("hello world")

    简写

    var st="hello world"

    1.     字符串的加号运算        +            仅仅就是拼接     这种方法     叫字符串拼接。

    2.  字符串prototype上的方法

    (1)   chartAt()  返回在指定位置的字符        var  s=st.charAt(2)

    (2) Concat()  链接两个或多个字符串,并返回新的 var s=st.concat(sd,"hello world");

    (3) indexOf()  返回某个字符串在字符串中首次出现的位置,没有返回-1

    (4) lastIndexOf()  功能和indexOf一样    不过是从后往前检索

    (5) match()              

    (6) Search()    

    (7) Replace()

    (8)    Slice()   截取字符串中的一部分

        前闭后开     包含2但是不包含7

    (9)  Splice()  将字符串按某种形式分割成数组

    (10)   substr()  也是截取和lslice有点区别

    (11) substrig()  跟slice一样

    (12)toLowercase()  将字符串中的字符都变成小写

    (13)toUppercase()  将字符串中的字符都变成大写

    (14)trim()    去掉字符串两端的空白

    补充

      每个函数都天生自带一个return。如果写return返回什么就是什么,如果不写就是undefined

      类    他的本质也是函数,里面也有return但默认是object,如果强制return一个值,不会造成影响,如果return是个对象,就会造成影响

      

    Array       数组这个类

      数组的定义

      var arr=new  Array("12","zhangsan")

      简写

      var    arr=[12,"张三"]

     基本的方法

    1.Push()     在数组的结尾处添加一个新元素。返回值是数组长度

    2.unshift()在开始出添加一个新元素。返回的是数组长度

    3.pop()删除数组中的最后一个元素。返回的是删除的那个元素

    4.shift()删除数组中的第一元素。返回的是删除的那个元素

    5.slice()截取数组中的一部分,并返回新的数组。对原来的数组没有影响

     

    6.spice() 在数组中添加或删除元素。

    从第三个开始向后删除一个 添加三个新的

      7.sort() 给数组中的元素排序

      8.reverse()反转数组中元素的顺序

      9.toString()将数组转换成字符串格式的数组,并返回结果

      10.concat()  合并多个数组,并返回新的

      11.indexOf()  检索数组中的元素,并返回他的位置,没有就是-1

    数组经典面试题

      数组去重

    var arr=[12,45,12,23,12,23];

    var ass=[];

    for(var i=0;i<arr.length;i++){

    if(ass.indexOf(arr[i])==-1){

    ass.push(arr[i])

          }

    }

    console.log(ass)

    12.join()  将数组中的所有元素转换成一个字符串

  • 相关阅读:
    委托 你怎么看?
    读懂IL代码就这么简单(二)
    读懂IL代码就这么简单 (一)
    C#操作XML方法集合
    文件夹管理工具(MVC+zTree+layer)(附源码)
    操作文件方法简单总结(File,Directory,StreamReader,StreamWrite )
    让你彻底理解 “==”与 Equals
    处理 EF 并发其实就这么简单
    CentOs7.5安装PostgreSQL11
    SQLAlchemy+Flask-RESTful使用(四)
  • 原文地址:https://www.cnblogs.com/guhuai/p/9948633.html
Copyright © 2011-2022 走看看