zoukankan      html  css  js  c++  java
  • js面向对象编程

    笔记:《javscript面向对象编程》

    1.数据类型:

    i;(undefined)

    var i;(undefined)

    var i = null ;(null)

    var i=1+undefined (NaN)

    var i=1+null(1)

    var i=""+null;(null)

    var i=""+undefined ;(undefined )

    NaN==NaN(false)

      

    2.数组:

      typeof [] ;  object

      数组中增加数据可以直接a[i]=''/push...

      数组中删除:delete a[i]并没有删除数据,而是将a[i]=undefined

    3.函数:

    1.arguments参数

    2.一些内置函数

    parseFloat('1.23abc.00') //1.23    parseFloat('a1.23bc.00') //NaN

    eval()会将其输入字符串当做javascript代码来执行:eval('var li =2 ;'); li  //2 /*Eval is evil*/

    变量作用域:函数作用域优于全局作用域:var a=123;function f(){alert(a); var a=1; alert(a);};f(); //undefined,1

    函数也是一种数据typeof 为function

    函数分为:回调函数,自调函数,内部(私有函数),返回函数的函数。

    闭包:

    var name = 'my window';
    var n;
    var obj = {
    name: 'my object',
    myObjFun: function () {
      n = function () {
      return this.name;
     }                                                       
      return n;
    }
    }
    alert(obj.myObjFun());//‘my window'                         
    alert(n())//my window'
     
    var name = 'my window';
    var obj = {
    name: 'my object',
    /*es6写法相同*/
    myObjFun: function () {
      return function () {
        return this.name;
     }
    }
    }
    alert(obj.myObjFun()());//‘my window'
    alert(obj.myObjFun().bind(obj)());//"my object"
     
    var name = 'my window';
    var obj = {
    name: 'my object',
    myObjFun: function () {
       return this.name;
      }
    }
    alert(obj.myObjFun());//"my object"

  • 相关阅读:
    pip install报错:RuntimeError: Python version >= 3.5 required
    简明conda使用指南
    Ninja使用Visual Studio(cl.exe)构建
    cmake设定boost python3
    系统程序员成长计划——像机器一样思考(二)
    在Redis Sentinel环境下,jedis该如何配置
    如何用Go语言实现汉诺塔算法
    pt-online-schema-change的实现原理
    MySQL Sniffer
    如何利用docker快速构建MySQL主从复制环境
  • 原文地址:https://www.cnblogs.com/cmmsuju/p/7865572.html
Copyright © 2011-2022 走看看