相关题目
- 获取2017-06-10格式的日期
function formatDate(dt){
if(!dt){
dt = new Date();
}
var year = dt.getFullYear();
var month = dt.getMonth()+1;
var date = dt.getDate();
if(month<10){
//强制类型转换
month = '0'+month;
}
if(date<10){
date = '0'+date;
}
return year + '-'+month+'-'+date;
}
var dt = new Date();
var formatDate = formatDate(dt);
console.log(format);
- 获取随机数,要求是长度一致的字符串格式(随机数在前端开发中的作用)
var random =Math.random();
random= random + '0000000000';//保证下一句不会报错
random = random.slice(0,9);
console.log(random);
- 写一个能遍历对象和数组的通用的forEach函数(jquery中有)
//想想对象中的forEach与数组中的for in怎么用比较好
//这里是forEach函数
function forEach(obj,fn){
var key;
if(obj instanceof Array){
obj.forEach(function(item,index){
fn(index.item);
})
}else{
for(key in obj){
fn(key.obj[key]);
}
}
}
//调用
var arr = [1,2,3];
forEach(arr,function(index,item)){
console.log(index.item);
}
var obj = {x:100,y:200};
forEach(obj,function(key,value){
console.log(key,value);
})
知识点
- 日期
Date.nowTime(); //获取当前时间毫秒数(这个数是从1970开始算起到现在走了多少毫秒数)
var myDate = new Date(); //new一个时间对象
myDate.getTime(); //获取毫秒数
myDate.getFullYear(); //年(4位数),还有一种getYear()的方法,有兼容性的问题,与getFullYear()相差1900
myDate.getMonth(); //月(0-11),实际应用是应该注意它的返回值
myDate.getDate();//日(1-31)
myDate.getDay();//星期(0-6),实际应用是应该注意它的返回值
myDate.getHours();//时(0-23)
myDate.getMinutes();//分(0-59)
myDate.getSeconds();//秒(0-59)
- Math
1 . 获取随机数Math.random();
会返回一个大于0小于1的一个小数,eg:0.14249200181060218,一般常用于清除缓存,比如:页面打开时,由于缓存的存在,刚刚更新的数据有时无法在页面得到刷新,因为如果请求的地址是相同的,浏览器就不会去连接服务器。这时候可以用随机数来处理,相当于加载新的页面。
在URL 参数后加上 "?r=" + Math.random();//加随机数
在 URL 参数后加上 "?timestamp=" + new Date().getTime(); //也可以加时间戳
2 . 更多方法及随机数的扩展见我之前的博客;
- 数组API
1 . forEach遍历所有元素
var arr = [1,2,3];
arr.forEach(function(item,index){//item为元素的值eg:1,2,3,index位为元素的位置,从0开始的
//遍历数组中所有元素
console.log(index,item);
//注意参数顺序
});
2 . every判断所有元素是否都符合条件
var arr = [1,2,3];
var result = arr.every(funciton(item,index){
// 用来判断所有的数组元素,都满足一个条件
if(item < 4){
return ture;
}
});
console.log(result);//true
3 . some判断是否有至少一个元素符合条件
var arr = [1,2,3];
var result = arr.every(funciton(item,index){
// 用来判断所有的数组元素,都满足一个条件
if(item < 2){
return ture;
}
});
console.log(result);//true
4 . sort排序(从小向大排序)
var arr = [1,4,3,2,5];
var arr2 = arr.sort(function(a,b){
//从小到大
return a-b;
//从大到小
//return b-a;
});
console.log(arr2);//[1,2,3,4,5]
5 . map对元素重新组装,生成新数组(把元素按照一种规则组装成另外一种元素,生成一种新的数组)
var arr = [1,2,3,4];
var arr2 = arr.map(function(item,index){
//将元素重新组装并返回
return '<b>'+item+'</b>';
});
console.log(arr2); //["<b>1</b>", "<b>2</b>", "<b>3</b>", "<b>4</b>"]
6 . filter过滤符合条件的元素
var arr = [1,2,3];
var arr2 = arr.filter(function(item,index){
//通过一个条件过滤数组
if(item>=2){
return true;
}
});
console.log(arr2); //2,3
- 对象API
var obj ={x:100,y:200,z:300};
var key;
for(key in obj){//key这里取得是obj的属性名
if(obj.hasOwnProperty(key)){//判断他是这个obj的属性而不是原型的属性
console.log(key,obj[key]);
}
}
本文介绍了前端开发中的一些实用技巧,包括日期格式化、生成固定长度的随机数、编写通用的forEach函数等内容,并提供了详细的代码示例。
1967

被折叠的 条评论
为什么被折叠?



