JS中关于随机生成颜色中的闭包问题?
烟雨江南
烟雨江南 2017-03-18 09:18:45
0
2
859
var getRandomColor = function() {
        return '#' + (function(color) {
            return new Array(7 - color.length).join("0") + color
        })((Math.random() * 0x1000000 << 0).toString(16))
    }

    

    var getRandomColor = function (){
        var color = (Math.random() * 0x1000000 << 0).toString(16);
        return '#'+ new Array(7 - color.length).join("0") + color;
    };

知道为什么要用闭包实现补“0”位,用第二种有什么不好的地方吗?

烟雨江南
烟雨江南

全部回覆(2)
数据分析师

JS中關於隨機生成顏色中的閉包問題? -PHP中文網問答-JS中關於隨機生成顏色中的閉包問題? -PHP中文網問答

圍觀一下哦,學習一下。

迷茫

简单看了下,这段代码里用闭包来实现补位,其实应该只是为了实现函数自身的洁净,让函数更加独立,内敛。再简单点来说就是为了完全隔绝外部联系,成为纯粹的函数。

另外从这个函数的功能上来讲,能够直接导出,没必要在函数内部特意声明一个局部变量占用内存,即使在执行完毕后就失效。


熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!