zoukankan      html  css  js  c++  java
  • javascript数据类型,定义方法,(工厂模式及闭包的应用)

    js数据类型分为两大类:一  值类型

                                           二 引用类型


    一 值类型  string  number  boolean null undefined

       eg:    

    var str = 'aaa'
    var num = 123
    var bool = true
    var n = null
    var und = undefined
    
    console.log(typeof str) //string
    console.log(typeof num)  //number
    console.log(typeof bool) //boolean
    console.log(typeof n) //object
    console.log(typeof und) //undefined

    二 引用类型  Array   object   function

     eg: Array
    //创建Array的三种方式
    //第一种
    var arr = new Array()
    arr[0] ='aa'
    arr[1] = 'bb'
    arr[2] = 'cc'
    console.log(arr)  //[ 'aa', 'bb', 'cc' ]
    //第二种
    var arr = new Array('aa', 'bb', 'cc')
    //第三种
    var arr = ['aa','bb','cc']

       eg:object

    //创建object的三种方式
    //第一种
    var preson = new Object()
    preson.name = '张三'
    preson['age'] = 20 // 方括号中的键名加引号,否则会报错
    console.log(preson) // { name: '张三', age: 20 }
    
    //第二种 字面量
    var preson_one = {}
    preson_one.name = 'jack'
    preson_one.action = function(){
        console.log(this.name)  //jack
    }
    preson_one.action()
    console.log(preson_one)  //{ name: 'jack', action: [Function] }
    //嵌套字面量 简写形式
    var preson1 = {
        name: 'jack',
        action: function(){
            console.log(this.name)  //jack
        }
    }
    preson1.action()
    
    //第三种 工厂模式
    function createobj(name){
        //原材料
        var obj = new Object()
        // 加工
        obj.name = name
        obj.fun = function(){
            console.log(this.name)
        }
        return obj
    }
    var a = createobj('李四')
    a.fun()
    console.log(a)
    
    //第四种 构造函授
    function createobj2(name){
        this.name = name
        this.fun = function(){
            console.log(this.name)
        }
    }
    var a2 =new createobj2('大王')
    a2.fun()
    
    //第五种 公有和私有 闭包的应用
    function preson3(name){
        //私有
        var name = name
        var fun = function(){
            console.log(name)
        }
        return{ //公有   //闭包
            say:fun
        }
    }
    var a3 = preson3("小美")
    a3.say() 

    eg:function

    //function
    //第一种 函数定义
    function eg(){
        alert(123)
    }
    eg()
    
    //第二种 函数表达式
     var eg2 = function (){
         alert(456)
     }
     eg2()
    
    //函数表达式只能在函数后面调用
  • 相关阅读:
    PHPstorm配置xdebug问题小记
    PHP 实现遍历出目录及其子文件
    localStorage存、取数组
    关于用户体验
    PHP实现导出Excel文件
    js将一位数组分割成每三个一组
    vue 动态绑定背景图片
    父组件传值给子组件
    数组字符串 转化成 对象
    Vuex 页面刷新后store保存的数据会丢失 取cookie值
  • 原文地址:https://www.cnblogs.com/carry-carry/p/11624810.html
Copyright © 2011-2022 走看看