• 关于JS的随笔(二)


    闭包

    1. 为什么要用闭包:出于种种原因,我们可能用的到函数内的属性,但是因为函数内定义的属性为局部变量,并不能在函数外使用,这个时候我们可以使用闭包来拿到我们想要的属性
    2. 这样做的好处是什么?   因为我们不仅可以将函数内的变量变相地提升了定义域,而且还可以避免变量名冲突的问题,变量可以在内存中一直存在。
    3. 说了这么多,那么闭包是什么样的呢?
      function test(){
          var a = 0
          return function test01(){
               a++
               return console.log(a)
          }
      
      }
      
      //调用test
      var a =test()
      a()//1
      a()//2
      a()//3

    JS的内置对象

    1. Arguments  只定义在函数内部,保存了函数的实参
    2. Array  数组对象
    3. Date   日期对象
    4. math        数学对象
    5. String       字符串对象

      String

      ◦ charAt(idx):返回指定位置处的字符

      ◦ indexOf(Chr):返回指定子字符串的位置,从左到右。找不到返回-1

      ◦ substr(m,n):返回给定字符串中从 m 位置开始,取 n 个字符,如果参数 n 省略, 则意味着取到字符串末尾。

      ◦ substring(m,n):返回给定字符串中从 m 位置开始,到 n 位置结束,如果参数 n 省 略,则意味着取到字符串末尾。

      ◦ toLowerCase():将字符串中的字符全部转化成小写。

      ◦ toUpperCase():将字符串中的字符全部转化成大写。

      ◦ length: 属性,不是方法,返回字符串的长度。

    JS对象

      对象(object)是 JavaScript 的核心概念,也是最重要的数据类型。JavaScript 的所有数 据都可以被视为对象。JavaScript 提供多个内建对象,比如 String、Date、Array 等等。对象是 带有属性和方法的特殊数据类型。  简单说,所谓对象,就是一种无序的数据集合,由若干个“键值对”(key-value)构成。通 过 JavaScript 我们可以创建自己的对象。 JavaScript 对象满足的这种”键值对”的格式我们成为 JSON 格式,以后会见得非常多,即伟大的 JSON 对象

    1. 对象的创建  var a = {};  var a = {name:zs,age:12}         var a = new Object()   a.name="zs“  a.age=12  var a = Object.create(null);此处的null可以放入一个对象,新建的a继承放入对象的所有属性
    2. 对象的序列化和反序列化     1)JSON.Stringify(object)  将对象object进行序列化,转换成字符串             2)JSON.parse(jsonstr)  将jsonstr进行反序列化,字符串转变成为对象。
    3. eval()的用法  eval可以将字符串直接执行 如(eval("console.log('你好,控制台')执行这句话,可以直接在控制台上面打印字符串),也就可以将对象进行反序列化
      var jsonstr = "{name:'zs',age:12}
      第一种解析的方法:eval("var a = " + jsonstr)
      第二种解析方法:var a = eval("("+jsonstr+")")     这里用()将字符串jsonstr扩起来是因为eval这个方法的自身原因,如果没有括号,这里的eval执行字符串并不会返回一个对象,因为它会认为这里的语句只是一个{}的普通语句,就没有对象返回,a的值就是undefined。
    4. this的使用     和Java中的this差不多,谁调用函数this返回这个对象,若window调用,则返回window对象,也就是script执行代码块的window
      对象中调用this,返回这个对象,也就是这个函数的上级。
  • 相关阅读:
    kubernetes 部署
    Pushgateway 介绍
    blackbox_exporter介绍
    prometheus 集群
    Alertmanager 集群
    prometheus 基于DNS的目标发现
    PHP —— 读取文件到二维数组
    PHP——自定义比较算法
    PHP遍历指定目录,并存储目录内所有文件属性信息
    mysql乱码问题解决办法
  • 原文地址:https://www.cnblogs.com/yxmgg/p/9052884.html
Copyright © 2020-2023  润新知