Java教程

闭包测试

本文主要是介绍闭包测试,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
(function() {     // -- 基础数据类型     {         function func (val = 0) {             return {                 decrease() {                     val--                 },                 increase() {                     val++                 },                 getVal() {                     return val                 }             }         }         const props = 0         const instance1 = func(props)         const instance2 = func(props)         console.log(instance1.getVal()) // 0         console.log(instance2.getVal()) // 0         console.log(props) // 0             instance1.increase()         console.log(instance1.getVal()) // 1         console.log(instance2.getVal()) // 0         console.log(props) // 0     }
    // -- 引用数据类型     {         console.log('-- -- --')         function func (param = { val: 0 }) {             return {                 decrease() {                     param.val--                 },                 increase() {                     param.val++                 },                 getVal() {                     return param.val                 }             }         }         const props = { val: 0 }         const instance1 = func(props)         const instance2 = func(props)         console.log(instance1.getVal()) // 0         console.log(instance2.getVal()) // 0         console.log(props.val) // 0             instance1.increase()         console.log(instance1.getVal()) // 1         console.log(instance2.getVal()) // 1         console.log(props.val) // 1     } }())
这篇关于闭包测试的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!