1.js 实现一个函数对javascript中json 对象进行克隆
var oldObject ="sdf"; var newObject = JSON.parse(JSON.stringify(oldObject)); console.log(newObject); 或者 var a = 'dddd'; function cp(a){return JSON.parse(JSON.stringify(a))} console.log(cp(a));
2.js 实现 ajax 请求或者submit请求时 锁屏功能以及开锁功能(请求时界面Loading以及元素不能点击,请求完成即消除Loading)
3.js 实现一个函数 获得url参数的值
function getQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = window.location.search.substr(1).match(reg); if (r != null) return unescape(r[2]); return null; }
4.请用js计算1-10000中出现的0 的次数
new Array(10000).fill('').map((_, index) => index + 1).filter(item => /0/.test(item)).reduce((count, item) => { return count + (String(item).match(/0/g) || []).length}, 0)
5.取得函数最多传递的参数 直接调用arguments.length
6.实现 repeatStr
7.写一个function,清除字符串前后的空格。(兼容所有浏览器)
function trim(str) { if (str & typeof str === "string") { return str.replace(/(^s*)|(s*)$/g,""); //去除前后空白符 } }
8.降维数组
var arr=[[1,2],[3,4]]; function Jw(obj){ return Array.prototype.concat.apply([],obj); } Jw(arr);
9.对象变成数组
var data={a:1,b:2,c:3}; function toArr(obj){ var arr1=[]; for(var i in obj){ arr1.push(obj[i]); } return arr1; // arr1.fitter(function(x){console.log(arr1(x))}); } console.log(toArr(data));
10.将url的查询参数解析成字典对象
function getQueryObject(url) { url = url == null ? window.location.href : url; var search = url.substring(url.lastIndexOf("?") + 1); var obj = {}; var reg = /([^?&=]+)=([^?&=]*)/g; search.replace(reg, function (rs, $1, $2) { var name = decodeURIComponent($1); var val = decodeURIComponent($2); val = String(val); obj[name] = val; return rs; }); return obj; }