- 如何获取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日