一 数据类型

(一)总共有7种原始类型

1.number
2.string
3.boolean
4.null(typeof object)
5.undefined
6.object(引用类型,相当于变量名存着的是地址,都是以键值对的方式存在,都可以用键操作相应的值)
7.symbol(es6新加,产生的值独一无二)

(二)检查数据类型

1.typeof
七大原始类型,除了null和object
object小类型中的function也可以检查

2.Object.prototype.toString.call(data)
null和object和属于object的小类型(array,set,map,function)

二 数组(包括json)最简单的操作方法(原生)

1.求数组的最大值

Math.max(...arr)
//json的某个属性的最大值
arr=[
  {a:1},
  {a:3},
  {a:2}
]
arr.reduce((prev,cur)=>prev.a>cur.a?prev:cur).a

2.求数组的最小值

Math.min(...arr)
//json的某个属性的最小值
arr=[
  {a:1},
  {a:3},
  {a:2}
]
arr.reduce((prev,cur)=>prev.a<cur.a?prev:cur).a

3.数组包含某个元素

//判断两个对象是否相等
function diff(obj1,obj2){
    let cdt1=obj1 instanceof Object
    let cdt2=obj2 instanceof Object
    if(!cdt1 && !cdt2){
      return obj1===obj2
    }else if(!(cdt1 && cdt2)){
      return false
    }else{
      if(Object.keys(obj1).length!=Object.keys(obj2).length){
          return false
        }else{
          for(let key in obj1){
              if(!diff(obj1[key],obj2[key])){
                  return false
                }
            }
            return true
        }
    }
}

努力求学的人
108 声望2 粉丝