- 如何获取2017-03-10这样格式的日期
- 获取随机数,要求是长度一致的字符串格式
- 写一个能遍历对象和数组的通用forEach函数
关于对象补充一点:复制保存着对象的某个变量时,操作的是对象的引用,比如我们可以将对同一对象的引用的其中一个变量赋值为null,而不会影响其他指向这个对象的变量的值,但是当为对象添加属性的时候,操作的是对象本身,体现在当我们为保存着对象的某个变量添加属性的时候,其他所有的变量也会跟着受影响。
日期类型(Function)
1 2 3 4 5 6 7 8 9
| Date.now() var dt = new Date(); dt.getTime() dt.getFullYear() dt.getMonth() dt.getDate() dt.getHours() dt.getMinutes() dt.getSeconds()
|
题目:获取2017-06-10格式的日期
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| function formatDate (dt) { if (!dt) { var 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 formattedDate = formatDate(dt); console.log(formattedDate);
|
Math对象(Object)
获取随机数,要求返回长度一致的字符串
1 2 3 4
| var random = Math.random(); random = random + '0000000000' random = random.slice(0, 10); console.log(random);
|
数组API
1 2 3 4 5 6 7 8
| var arr = ['a', 'b', 'c']; arr.forEach(function (item, index) { 遍历所有数组元素 console.log(index, item); })
|
1 2 3 4 5 6 7 8
| var arr = [1, 2, 3]; var result = arr.every(function (item, index) { if (item < 4) { return true; } }) console.log(result);
|
1 2 3 4 5 6 7
| var arr = [1, 2, 3]; var result = arr.some(function (item, index) { if (item < 2) { return true } }) console.log(result);
|
1 2 3 4 5 6 7 8 9
| var arr = [1, 4, 2, 3, 5]; var arr2 = arr.sort(function (a, b) { return a - b;
}) console.log(arr2);
|
sort方法默认会调用每个对象的toString方法,但往往不符合人类的思维习惯,因此可以传入一个比较函数,按照我们的意愿进行排序。
对于sort中的比较函数,如果第一个参数想要放在第二个参数之前,那么返回-1,如果第一个参数想要放在后面,那么返回1,否则为0。
1 2 3 4 5 6
| var arr = [1, 2, 3, 4]; var arr2 = arr.map(function(item, index) { return '<b>' + item + '</b>' }) console.log(arr2);
|
1 2 3 4 5 6 7 8
| var arr = [1, 2, 3]; var arr2 = arr.filter(function (item, index) { if (item >= 2) { return true } }) console.log(arr2)
|
对象API
1 2 3 4 5 6 7 8 9 10 11 12
| var obj = { x: 100, y: 200, z: 300 } var key; for (key in obj) { if (obj.hasOwnProperty(key)) { console.log(key, obj[key]); } }
|
写一个能遍历对象和数组的forEach函数
1 2 3 4 5 6 7 8 9 10 11 12
| function forEach (obj, fn) { if (obj instanceof Array) { obj.forEach(function(item, index) { fn(index, item); }) } else { for (key in obj) { fn(key, obj[key]); } } }
|
2018 年 1月 7日