最基础的代码设计模式-健壮可靠宽容

xiaoxiao2021-02-28  87

题注参与过多次活动,每次主题都会有设计模式,其实说来说去都是那几个常用的。

然而,实际上这些设计模式已经内嵌在框架里面,用好框架的服务足够了。往往,最基础的设计模式容易被忽略。

今天看到一篇好文,下面是题主一早写的代码,应该还算符合题目的要求,欢迎吐槽

function getRadom(start, end, radomArray) { let getCurrent = function () { return Math.random(0, 1) * (end - start) + start; }; let current = getCurrent(); while (radomArray.includes(current)) { current = getCurrent(); } return current; } function curry(n, start, end) { // n参数健壮校验 //必须要输入n if(!n){return 'need input number'} //n必须是数字,或者字符串数字 if(!(typeof n ==Number || Math.abs(Number(n)))){return 'need input number'} //start 和end之间 if(n<start||n>=end){return 'need input number between start & end'} //必须输入小于这段长度的数字 if(n>(end-start)){return 'need input n.length < end-start'} if(n%1!=0){ n=Math.floor(n)} let radomArray = []; for (let i = 0; i < n; i++) { //给一个值,去取随机数 let radom = getRadom(start, end,radomArray); radomArray.push(radom); //校验随机数, } //返回值校验 return radomArray; } //输入一个数字,返回数组 必须在2,32 之间,并且无重复数字 curry(10, 2, 32);
转载请注明原文地址: https://www.6miu.com/read-64179.html

最新回复(0)