Date
Date.now(); // 返回值:1970年1月1日午夜与当前日期和时间之间的毫秒数
var date = new Date();
console.log(date.getTime()); // 获取毫秒数
console.log(date.getFullYear()); // 年
console.log(date.getMonth()+1); // 月 (0 - 11)
console.log(date.getDate()); // 日 (1 - 31)
console.log(date.getHours()); // 小时 (0 - 23)
console.log(date.getMinutes()); // 分钟 (0 - 59)
console.log(date.getSeconds()); // 秒 (0 - 59)
在这里需要注意的是:在获取月份时需要+1,因为月份的取值是从0开始的。
Math
Math.random(); // 获取大于等于 0.0 且小于 1.0 的随机数,一般不会重复
Math.random()在前端中可以起到清除缓存的作用,比如很频繁的访问一个链接,如果服务端有缓存,你这个链接不变的话,它会一直缓存,你访问不到一个真实的效果,只有清除浏览器缓存或者CTRL+F5强制刷新之后才能出现最新的版本,这样调试起来十分的不方便,可以采取在ajax的url后加上随机串来避免浏览器缓存,:
$.ajax({url:'test.php?'+Math.random()*100000})
在ajax的url后加上随机串来避免浏览器缓存,使每一次的请求都是一个新请求,从而防止浏览器从缓存中读取旧版本,除了加入随机数还可以加入当前时间,同样可以使每次请求的地址都是不一样的,从而防止浏览器使用缓存。
常用的数学方法还有:
Math.floor(); // 向下取整(下舍去)
Math.ceil(); // 向上取整(上进入)
Math.round(); // 四舍五入
Math.abs(); // 取绝对值
Math.cos(); // 余弦值
Math.sin(); // 正弦值
Math.max(); // 比较(取大)
Math.min(); // 比较(取小)
Math.pow(x,y); //x 必需 底数,必须是数字;y 必需,幂数,必须是数字
总结了一些JS常用的编程技巧。若有不对,欢迎指正。
1. 随机获取数组中的元素
var arr = [1, 2, 3, 4, 5];
var arrItem = arr[Math.floor(Math.random() * arr.length)];
2. 获取数组中的最大值或最小值
var arr = [1, 2, 3, 4, 5, 55, 789];
var maxNum = Math.max.apply(Math,arr);
var minNum = Math.min.apply(Math,arr);
3. 获取指定范围内的随机数
var num = Math.floor(Math.random() * (max - min)) + min;
数组API
forEach:遍历所有元素
var arr = [1, 2, 3]
arr.forEach(function (item, index) {
// 遍历数组的所有元素
console.log(item, index)
})
every:判断所有元素是否都符合条件
var arr = [1, 2, 3, 4, 5];
var result = arr.every(function (item, index) {
if (item < 4) {
return true;
}
});
console.log(result);
some:判断是否有至少一个元素符合条件
var arr = [1, 2, 3, 4, 5];
var result = arr.some(function (item, index) {
if (item < 3) {
return true;
}
});
console.log(result);
map:对数组重新封装,生成新数组
var arr = [1, 2, 3, 4, 5];
var arr2 = arr.map(function (item, index) {
return "<b>" + item + "</b>";
})
console.log(arr2);
filter:过滤符合条件的数组
var arr = [1, 2, 3, 4, 5];
var arr2 = arr.filter(function (item, index) {
if (item < 4) {
return true;
}
})
console.log(arr2);
对象API
var obj = {
x: 100,
y: 200,
z: 300
}
for (key in obj) {
if (obj.hasOwnProperty(key)){
console.log(key, obj[key]);
}
}
网友评论