JS限制条件补全问题实例分析

题目一.a和b两个变量,不用第三个变量来切换两个变量值

var a=5; var b=6; a=a+b; b=a-b; a=a-b; alert(a); alert(b);

题目二.有一个数n=5,不用for循环,怎样返回[1,2,3,4,5]这样的数组

方法一.用递归来进行遍历

var n=5; function show(){ var arr=[]; return (function(){ arr.unshift(n); n--; if(n!=0){ arguments.callee(); } return arr; })(); } alert(show(n));

方法二.用正则来匹配模拟次数

var n=5; var arr=[]; arr.length=n+1; var arr2=[]; var str=arr.join("a"); //中间连接符用a,要六个数才五个逗号,所以length=n+1 var re=https://www.jb51.net/a/g; str.replace(re,function(){ arr2.unshift(n--); }); alert(arr2);

题目三.一个数n,当n<100就返回n,否则返回100,但是不能用if else、三目、switch等

方法一.Math.min

var n=150; function show(){ return Math.min(n,100); } alert(show(n));

方法二.用数组排序

var n=50; function show(){ var arr=[n,100]; arr.sort(); return arr[0]; } alert(show(n));

方法三.根据数字转字符串后的长度判断,用到for循环,如果长度小于3,就返回自身,大于等于3就返回100

var n=150; function show(){ var str="n"; for(;str.length<3;){ return n; } for(;str.length>=3;){ return 100; } } alert(show(n));

方法四.json

var n=50; function show(){ var json={}; var m=n<100||json; //m是布尔值 for(var attr in m){ return 100; } return n; } alert(show(n));

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript数组操作技巧总结》、《JavaScript排序算法总结》、《JavaScript遍历算法与技巧总结》、《JavaScript数学运算用法总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript查找算法技巧总结》及《JavaScript错误与调试技巧总结

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wwfzjj.html