# JS **Repository Path**: greencap/JS ## Basic Information - **Project Name**: JS - **Description**: No description available - **Primary Language**: JavaScript - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2017-01-08 - **Last Updated**: 2020-12-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #JS 数组去重 ``` 函数一: Array.prototype.removeRepeat = function() { var temp=[],tempObj={}; for (var i = 0; i < this.length; i++) { if (!tempObj[this[i]]) { tempObj[this[i]]=true; temp.push(this[i]); } } return temp; }; 调用 var arr=[1,1,2,2,3,3]; arr.removeRepeat(); 结果 [1,2,3] 函数二: function removeRepeat(arr) { var temp=[],tempObj={}; for (var i = 0; i < arr.length; i++) { if (!tempObj[arr[i]]) { tempObj[arr[i]]=true; temp.push(arr[i]); } } return temp; }; 调用 var arr=[1,1,2,2,3,3]; removeRepeat(arr); 结果 [1,2,3] ``` 书写一个函数,要求输入一个集合,返回该集合中所有既能被3整除的也能被5整除的数 function getArr(arr) { var temp=[]; for (var i = 0; i < arr.length; i++) { if (arr[i]%5 ==0 && arr[i]%3 ==0 ) { temp.push(arr[i]); } } return temp; }; 调用 var arr=[0,10,15,20,25,35]; getArr(arr); 结果 [0,15] 在上面的题目中增加一个要求:返回满足条件的个数 function getArr(arr) { var tempArr=[], temp=[], count =0; for (var i = 0; i < arr.length; i++) { if (arr[i]%5 ==0 && arr[i]%3 ==0 ) { temp.push(arr[i]); count++; tempArr=[temp,count]; } } return tempArr; }; 调用 var arr=[0,10,15,20,25,35]; alert(getArr(arr)); 结果 [0,15,2(符合条件的个数)] 书写一个函数,给定字符串 str,检查其是否包含数字,包含返回 true,否则返回 false 1.正则表达式 function isContainNumber(str) { for (var i = 0; i < str.length; i++) { if (/\d/.test(str)) { return true; }else{ return false; } } }; 2.双重for循环 function isContainNumber(str) { for (var i = 0; i < str.length; i++) { for (var j = 0; j < 10; j++) { if (str[i]==j+"") { return true; }else{ return false; } } } }; 3.ASCII function isContainNumber(str) { for (var i = 0; i < str.length; i++) { if (str[i].charCodeAt()>47 && str[i].charCodeAt()<58) { return true; }else{ return false; } } }; 扩展:书写一个函数,给定字符串 str,检查其是否包含数字,包含返回该所有数字,并去掉重复项 Array.prototype.removeRepeat = function() { var temp=[],tempObj={}; for (var i = 0; i < this.length; i++) { if (!tempObj[this[i]]) { tempObj[this[i]]=true; temp.push(this[i]); } } return temp; }; function isContainNumber(str) { var arr=str.split(""),temp=[]; for (var i = 0; i < arr.length; i++) { if (/\d/.test(arr[i])) { temp.push(arr[i]); }else{ continue; } } return temp.removeRepeat(); }; var str ="ss5sfsf51sfsf8sf51d5d4dgd215422500055s51dsad6"; isContainNumber(str) 结果: [5, 1, 8, 4, 2, 0, 6] 书写一个函数,合并数组 arr1 和数组 arr2。不要直接修改数组 arr,结果返回新的数组 1.内置方法concat() function mergeArr(arr1,arr2) { var temp=[]; return temp = arr1.concat(arr2); } 2.for循环 function mergeArr(arr1,arr2) { var temp=[]; for (var i = 0; i < arr1.length; i++) { temp.push(arr1[i]); } for (var i = 0; i < arr2.length; i++) { temp.push(arr2[i]); } return temp; } 构建一个and函数,返回参数 a 和 b 的逻辑且运算,逻辑或运算,逻辑非结果 function and(a,b) { return a && b;//逻辑且运算 //return a || b;//逻辑或运算 //return a != b;//逻辑非运算 } 书写一个函数,要求传入的一个数组,返回其中2个元素,要求他们相加的值最大。 function getMaxArr(arr) { var temp=[],sum=0; for (var i = 0; i < arr.length; i++) { for (var j = i+1; j < arr.length; j++) { if (arr[i]+arr[j]>sum) { temp=[arr[i],arr[j]]; sum = arr[i]+arr[j] } } } return temp; } 原生js如何获取表单 function foo(obj) { alert("select的文本值"+obj.options[obj.selectedIndex].text); alert("select的value值"+obj.options[obj.selectedIndex].value); } 在JavaScript中定时调用函数 foo()? 1.function foo() { var timer = null; alert("aaaaa"); timer = setInterval(foo,300); }; foo(); 2.var timer =null; function foo() { alert("aaaaa"); } timer = setInterval(function () { foo(); },300) 完成foo()函数的内容,要求能够弹出对话框提示当前选中的是第几个单选框。
function getElements(){ var radio = document.getElementsByName('radioGroup'); for (var i = 0; i < radio.length; i++) { if (radio[i].checked) { alert("你选择了第"+(i+1)+"个单选框"); } } return false; } JSON字符串解析 var json_string='[{"name":"沈","age":18,"height":"190"},{"name":"张","age":17,"height":"170"},{"name":"李","age":20,"heig ht":"180"}]'; function foo(str) { var result=""; var temp = JSON.parse(str); for (var i = 0; i < temp.length; i++) { result+=""+temp[i]["name"]+""+temp[i]["age"]+""+temp[i]["height"]+"" } document.getElementById('tbody').innerHTML=result; }; foo(json_string);