前言:
就不说数据类型了,上几个案例,一起看下能答对几个
简介:
这是对js的考验,数据类型考古之前博客,因为挺重要,写的太详细,所以这里只说例子测试底子
直接开始
- 纯干货
let b = 6;
console.log(b += 1);//7 相等于b = 6 + 1
console.log(c+=1);// 相等于 c=c+1
// 在js中true默认是1 false为0 null代表空对象与undefined相同
console.log(true > 0);//true 1>0
console.log(true > 1);//false 1>1
console.log(null == undefined);//true null代表空对象与undefined相同
console.log(null === undefined);//false 全等会比较类型与值
console.log("null" == "undefined");//false 字符串不相同
console.log(null);//null
console.log(typeof null);//object null代表空对象
console.log(typeof undefined);//undefined
console.log({}=={});//false 引用数据直接比较为false
console.log({}==={});//false 引用数据直接比较为false
console.log(1 == 1);// true
console.log(1 == "1");// true 隐式转换与数值类型比较
console.log(1 == "1px");//false
console.log(1 == true);//true js中true为1 flase为0
console.log([]==false)// true []表示false fasle为0
console.log([]==0)// true []表示false 0表示fasle
console.log(100 == false);// false
console.log(188 == "188");// true 不比较类型不是===严格等于
console.log(false == " ");// true " "空字符串为fasle
console.log({}==[])// false //空数组不等于空对象
console.log({}=={})// false //引用数据类型地址不相等
console.log([]=="")// true false==false
console.log([]==0)// true false==0
console.log(![] == [])// true 先比较在取反 对象先转字符串再转数字,布尔转数字; 数字比数字
console.log([]==[])// false 引用数据类型比较的空间地址
console.log(![]==false);//true ![]typeof检测是boolean boolean==false true
console.log({a:1}=="[object Object]")// true
console.log("12px" == 12);
绝对比较; 只要数据类型不一样,那么返回false;
console.log(1 === 1);// true
console.log(1 === true);// false
console.log(1 === "1");// false
Es6 set例子
- new Set() es6方法,特点值不会重复,(用最简单易懂的话解说)
//定义一个测试1数组
let textArr1 = [1, 2, 3, 4, 5, 4, 2, 3];
//因为测试1是数组,所以用数组包裹、将new Set()用扩展运算符插入
let textArr2 = [...new Set(textArr1)];
//得到的是去重后的数组1 2 3 4 5
console.log(textArr2);
Es6 map例子
- xxx.map() new Map() es6 快速查找指定值,不论数据量,速度超快
let arr = [
{
name: '张坤',
age: 20
}, {
name: '张方',
age: 22
}, {
name: '张无极',
age: 80
}, {
name: '张三丰',
age: 120
},
]
let arr1 = arr.map(v => v.age === 80);
console.log(arr1);//(4) [false, false, true, false]
// 如果用findIndex不存在返回-1,存在返回下标,
// find存在返回值不存在返回undefined
// 过滤
let arr2 = arr.filter(v => v.age === 80);
console.log(arr2);
// [{…}]
// 0: {name: "张无极", age: 80}
// length: 1
// __proto__: Array(0)
Life is just a sum of our choices.
生活,是由我们每一个选择构成的。