JavaScript Array some() 方法
定义和用法
some() 方法用于检测数组中的元素是否满足指定条件(函数提供)。
some() 方法会依次执行数组的每个元素:
如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。如果没有满足条件的元素,则返回false。
注意: some() 不会对空数组进行检测。
注意: some() 不会改变原始数组。
var arr = [1,2,3,4,5,6];
arr.some(function(item){ return item > 3;});
//true
arr.some(function(item){ return item > 18;});
//false
JavaScript Array every() 方法
定义和用法
every() 方法用于检测数组所有元素是否都符合指定条件(通过函数提供)。
every() 方法使用指定函数检测数组中的所有元素:
如果数组中检测到有一个元素不满足,则整个表达式返回 false ,且剩余的元素不会再进行检测。如果所有元素都满足条件,则返回 true。
注意: every() 不会对空数组进行检测。
注意: every() 不会改变原始数组。
var arr = [1,2,3,4,5,6];
arr.every(function(item){ return item > 3;});
//false
arr.every(function(item){ return item > 0;});
//true
JavaScript Array includes() 方法
定义和用法
includes() 方法用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false。
var arr = [1,2,3,4,5,6];
arr.includes(3);
//true
arr.includes(0);
//false
JavaScript indexOf() 方法
定义和用法
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
如果没有找到匹配的字符串则返回 -1。
注意: indexOf() 方法区分大小写。
var arr = [1,2,3,4,5,6];
arr.indexOf(3);
//2
arr.indexOf(1);
//0
arr.indexOf(1);
//0
//注意!!!
Boolean(arr.indexOf(1));
//false
Boolean(arr.indexOf(1) == false);
//true
Boolean(arr.indexOf(1) === false);
//false
JavaScript 判断两数组是否有交集方法
var arr = [1,2,3,4,5,6];
var arr2 = [7,8,9,0];
var arr3 = [1,3,6,9];
//case1: some 与 indexOf
Boolean(arr.some( function(item){ return arr2.indexOf(item) !== -1}));
//false
Boolean(arr.some( function(item){ return arr3.indexOf(item) !== -1}));
//true
Boolean(arr.some( function(item){ return arr3.indexOf(item) >= 0}));
//true
//case2: some 与 includes
Boolean(arr.some( (item) => { return arr3.includes(item);}));
//true
Boolean(arr.some( (item) => { return arr2.includes(item);}));
//false
JavaScript filter() 方法
定义和用法
filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
注意: filter() 不会对空数组进行检测。
注意: filter() 不会改变原始数组。
arr.filter()
var arr = [1,2,3,4,5,6];
arr.filter(item => item > 3)
// [4, 5, 6]
对象转json字符串
var object = {id:1, name:'test'};
console.log(JSON.stringify(object));
//{"id":1,"name":"test"}
json字符串转对象
var json = '{"id":1,"name":"test"}';
//case 1: JSON.parse 推荐使用
console.log(JSON.par se(json));
/*
{id: 1, name: "test"}
id: 1
name: "test"
__proto__: Object
*/
//case 2: eval ⚠️危险函数 不推荐使用
console.log(eval("(" + json + ")"));
/*
{id: 1, name: "test"}
id: 1
name: "test"
__proto__: Object
*/
//case 3: new Function 不太常用
console.log((new Function("return " + json))());
/*
{id: 1, name: "test"}
id: 1
name: "test"
__proto__: Object
*/
参考链接
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Function
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/eval