JS取出两个数组中的不同或相同元素,app同时对多个框架

在React项目开发中,经常需要引用一些实用的第三方框架。在使用一些比较庞大的第三方框架时,框架内的各种资源文件数量巨大,这时,如果我们在每次使用框架时,都将框架内所有资源都全部加载的话,这将使得页面的性能大大降低。这时,我们就需要对这些庞大的第三方框架做按需加载了。

前端表单中有身份证号的校验,下边是用JS来校验身份证号的合法性。

1、取出两个数组的不同元素

首先介绍下对单个框架做按需加载的方法

中国居民身份证号码编码规则

var arr1 = [0,1,2,3,4,5];var arr2 = [0,4,6,1,3,9];function getArrDifference(arr1, arr2) { return arr1.concat(arr2).filter(function(v, i, arr) { return arr.indexOf(v) === arr.lastIndexOf(v); }); } console.log(getArrDifference(arr1,arr2)); //输出:(4) [2, 5, 6, 9]

其实在使用create-react-app脚手架的情况下,对单个框架做按需加载的方法,网上的相关文章已经很多了,我这里只简单的介绍下。常用的方法就是通过babel-plugin-import来实现按需加载,并通过react-app-rewired来重写项目配置文件,将babel-plugin-import写入配置。

第一、二位表示省。

concat() 方法:用于连接两个或多个数组。

1、安装

第三、四位表示市。其中,01-20,51-70表示省直辖市;21-50表示地区。

该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本,例:

cnpm install babel-plugin-import --devcnpm install react-app-rewired --dev

第五、六位表示县。01-18表示市辖区或地区辖县级市;21-80表示县;81-99表示省直辖县级市。

script type="text/javascript"var arr = new Array(3)arr[0] = "George"arr[1] = "John"arr[2] = "Thomas"var arr2 = new Array(3)arr2[0] = "James"arr2[1] = "Adrew"arr2[2] = "Martin"document.write(arr.concat(arr2));//输出:George、John、Thomas、James、Adrew、Martin/script

2、修改package.json

第七、十四位表示出生年月日。其中年份用四位数字表示,年、月、日之间不用分隔符。例如:1981年05月11日就用19810511表示。

Array filter()
方法:创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。注意:filter()
不会对空数组进行检测。注意:filter()
不会改变原始数组。语法:array.filter(function(currentValue,index,arr),
thisValue)indexOf()
方法:可返回某个指定的字符串值在字符串中首次出现的位置。如果没有找到匹配的字符串则返回
-1。注意:indexOf() 方法区分大小写。lastIndexOf()
方法:可返回一个指定的字符串值最后出现的位置,如果指定第二个参数
start,则在一个字符串中的指定位置从后向前搜索。注意:该方法将从后向前检索字符串,但返回是从起始位置
(0) 开始计算子字符串最后出现的位置。
看它是否含有字符串。开始检索的位置在字符串的 start
处或字符串的结尾。如果没有找到匹配字符串则返回 -1 。注意:lastIndexOf()
方法是区分大小写的!2、取出两个数组的相同元素

"scripts": {- "start": "react-scripts start",+ "start": "react-app-rewired start",- "build": "react-scripts build",+ "build": "react-app-rewired build",- "test": "react-scripts test",+ "test": "react-app-rewired test",}

第十五、十七位表示顺序码。对同地区、同年、月、日出生的人员编定的顺序号。其中第十七位奇数分给男性,偶数分给女性。

var arr1 = [0,1,2,3,4,5];var arr2 = [0,4,6,1,3,9];function getArrEqual(arr1, arr2) { let newArr = []; for (let i = 0; i  arr2.length; i++) { for (let j = 0; j  arr1.length; j++) { if(arr1[j] === arr2[i]){ newArr.push(arr1[j]); } } } return newArr;}console.log(getArrEqual(arr1, arr2)); //输出:(4) [0, 4, 1, 3]

发表评论

电子邮件地址不会被公开。 必填项已用*标注

标签:, , , , , , , , , , ,
网站地图xml地图