수학, 배열, 날짜는 학습 중에 자주 접하게 되는데, 이 글에서는 이에 대해 설명하겠습니다.
min은 포함하지만 max는 제외하여 min부터 max까지 임의의 정수를 반환하는 함수 작성
function getRandom (min,max) { return Math.floor(Math.random()*(max-min) + min) }//Math.floor 返回小于参数值的最大整数//Math.random 返回[0,1)之间的随机数
max를 포함하여 min부터 max까지 임의의 정수를 반환하는 함수 작성
function getRandom (min,max) { return Math.floor(Math.random()*(max-min+1) + min) }
함수 작성, 길이가 n인 임의의 문자열. 문자열 문자의 값 범위는 0~9, a~z, A~Z
function getRandomStr (n) { var dict = '0123456789'+ 'abcdefghijklnmopqrstuvwxyz'+ 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; //一个字典; var string = ''; for (i=0; i<n; i++) { string += dict[Math.floor(Math.random()*62)] ; } return string ; }
임의의 IP 주소를 생성하는 함수를 작성하세요. 합법적인 IP 주소는 0.0.0.0~255.255.255.255입니다.
function getRandIP(){ var ipArr = []; for (i=0; i<4; i++) { ipArr.push(Math.floor(Math.random()*256)); //push()方法把元素从尾部放进数组; } return ipArr.join('.'); }var ip = getRandIP()console.log(ip)
임의의 색상 문자열을 생성하는 함수를 작성하세요. 유효한 색상은 #000000~ #ffffff
function getColor () { var dict = '0123456789abcdef' var color = '#'; for (i=0; i<6; i++) { color += dict[Math.floor(Math.random()*16)]; } return color; } getColor() ;
배열 방식에서 push, pop, Shift, unshift, Join 및 splice 기능이 무엇인가요? push, pop, Shift 및 unshift 메소드를 각각 구현하려면 splice 함수를 사용하십시오. push() 메소드는 tail의 요소를 배열에 삽입하고 원래 배열의 길이와 인덱스를 변경할 수 있습니다.
var a = [ ] ;
a.push(4) ;a ; // [4]
pop() 메서드는 원래 배열 길이와 인덱스를 변경하여 배열의 마지막 요소를 삭제하고 반환할 수 있습니다. [1,2] ;
shift() 메서드는 배열의 첫 번째 요소를 삭제하고 첫 번째 요소의 값을 반환하여 길이를 변경할 수 있습니다. 및 원본 배열의 인덱스
var a= [1,2,3,4];
unshift() 메소드는 배열의 시작 부분에 하나 이상의 요소를 추가하고 원래 배열 길이와 인덱스를 변경하여 새 길이를 반환합니다.
var a=[1,2,3,4,5];
splice() 메소드는 배열에 항목을 추가/제거한 다음 삭제된 항목을 반환할 수 있습니다. 삭제되지 않으면 빈 배열을 반환하고 원래 배열 길이와 인덱스를 변경합니다. ;
var a=[1,2,3];
var a=[1,2,3];
a.splice(0,0,7,8) //[ ]; 위치 0부터 시작하여 위치 0을 삭제하고 7,8을 삽입합니다(앞부터 삽입) ;a //[7,8,1,2,3];var a=[1,2,3,4] ;
a.splice(1,1,7,8); //[2] ;1번째 위치([2])를 삭제하고 a; ,8,3,4];
push()는 splice() , pop(), Shift(), unshift() 메서드로 구현할 수 있습니다.
var a =[1,2,3,4,5 ,6];
function squareArr(arr){ for (i=0; i<arr.length; i++) { arr[i] = arr[i]*arr[i]; } return arr; }var arr = [2, 4, 6] squareArr(arr)console.log(arr) // [4,16,36]
function filterPositive(arr){ var newArr = []; var k = 0; for (i=0; i<arr.length; i++) { if (typeof arr[i] === 'number') { //验证是否为数字 if(arr[i]>0) { newArr[k] = arr[i]; k++; } } } return newArr; }var arr = [3, -1, 2, '饥人谷', true]var newArr = filterPositive(arr)console.log(newArr) //[3, 2]console.log(arr) //[3, -1, 2, '饥人谷', true]
//示例var str = getChIntv("2017-02-08");console.log(str); // 距除夕还有 20 天 15 小时 20 分 10 秒 function getChIntv(date) { var time = Math.abs(Date.now()-Date.parse(date)); var day = Math.floor(time/86400000); var hour = Math.floor(time%86400000/3600000); var min = Math.floor(time%86400000%3600000/60000) var s = Math.floor(time%86400000%3600000%60000/1000) var ms = (time%86400000%3600000%60000%1000); return '距离'+date+': '+day+' 天 '+hour+' 小时 '+min+' 分钟 '+s+' 秒 '+ms+' 毫秒 '} getChIntv('2017-04-08') //距离2017-04-08: 55 天 4 小时 0 分钟 45 秒 774 毫秒;
//示例var str = getChsDate('2015-01-08');console.log(str); // 二零一五年一月八日 var dict ={0:'零',1:'一',2:'二',3:'三',4:'四',5:'五',6:'六',7:'七',8:'八',9:'九', 10:'十',11:'十一',12:'十二',13:'十三',14:'十四',15:'十五',16:'十六', 17:'十七',18:'十八',19:'十九',20:'二十',21:'二十一',22:'二十二',23:'二十三', 24:'二十四',25:'二十五',26:'二十六',27:'二十七',28:'二十八',29:'二十九',30:'三十',31:'三十一'} function getCHT (date) { time = date.split('-'); year = time[0].split(''); for (i=0; i<year.length; i++) { year[i] = dict[year[i]]; } month = dict[parseInt(time[1])]; day = dict[parseInt(time[2])]; return year.join('')+' 年 '+month+' 月 '+day+' 日'} getCHT('2017-06-01') // 二零一七年六月一日;
//示例function friendlyDate(time){ }var str = friendlyDate( '1484286699422' ) // 1分钟前var str2 = friendlyDate('1483941245793') //4天前 function friendlyDate(time){ var nowT = Date.now(); //Date.now()获取当前时间距离1970年1月1日00:00:00的毫秒数 pastT = nowT-time; if (pastT<=60*1000) { return '刚刚' }if (pastT>60000 && pastT<3600*1000) { return Math.floor(pastT/60000)+'分钟前' }if (pastT>=3600*1000 && pastT<24*3600*1000) { return Math.floor(pastT/(3600*1000))+'小时前' }if (pastT>=24*3600*1000 && pastT<30*24*3600*1000) { return Math.floor(pastT/(24*3600*1000))+'天前' }if (pastT>=30*24*3600*1000 && pastT<12*30*24*3600*1000) { return Math.floor(pastT/(30*24*3600*1000))+'月前' }else { return Math.floor(pastT/(360*24*3600*1000))+'年前' } } friendlyDate(1496246400000) //一天前;
HTML5/CSS3 관련 지식 설명
DOM에서 Javascript 작업에 일반적으로 사용되는 API 요약JavaScript 타이머 및 DOM 문서의 전체 요약위 내용은 수학, 배열, 날짜 관련 예제의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!