方法一:最普遍的做法 使用 ES5 語法來實現雖然會麻煩些,但相容性最好,不用考慮瀏覽器 JavaScript 版本。也不用引入其他第三方庫。 1,直接使用 filter、concat 來計算 var a = [1,2,3,4,5] var b = [2,4,6,8,10] //交集 var c = ...
方法一:最普遍的做法
使用 ES5 語法來實現雖然會麻煩些,但相容性最好,不用考慮瀏覽器 JavaScript 版本。也不用引入其他第三方庫。
1,直接使用 filter、concat 來計算
var
a = [1,2,3,4,5]
var
b = [2,4,6,8,10]
//交集
var
c = a.filter(
function
(v){
return
b.indexOf(v) > -1 })
//差集
var
d = a.filter(
function
(v){
return
b.indexOf(v) == -1 })
//補集
var
e = a.filter(
function
(v){
return
!(b.indexOf(v) > -1) })
.concat(b.filter(
function
(v){
return
!(a.indexOf(v) > -1)}))
//並集
var
f = a.concat(b.filter(
function
(v){
return
!(a.indexOf(v) > -1)}));
console.log(
"數組a:"
, a);
console.log(
"數組b:"
, b);
console.log(
"a與b的交集:"
, c);
console.log(
"a與b的差集:"
, d);
console.log(
"a與b的補集:"
, e);
console.log(
"a與b的並集:"
, f);
2,對 Array 進行擴展
(1)為方便使用,我們可以對數組功能進行擴展,增加一些常用的方法。
//數組功能擴展
//數組迭代函數
Array.prototype.each =
function
(fn){
fn = fn || Function.K;
var
a = [];
var
args = Array.prototype.slice.call(arguments, 1);
更多相關文章
-
jQuery Migrate是應用遷移輔助插件,是用於高級版本相容低級版本輔助插件。 例如jQuery版本用的是1.x,計劃升級到3.x,就可以在頁面刪除1.x版本,換成3.x版本,如果有腳本錯誤, 就引入jquery-migrate插件用於相容低版本,同時也顯示低版本方法替換成新版本方法的方案。 ...
-
使用New是構造函數,不使用New是函數調用,同時this指向不同。 示例: function Test(name, age, job) { console.log(this); this.name = name; this.age = age; this.job = job; } 1、直接調用函數 ...
-
參考資料:Basic Configuration 直接Ctrl+v(粘貼圖片)報錯信息:上傳文件時發生網路錯誤(networkError:Network error occurred during file upload) 版本:4.11.4 留下的按鈕樣式如下圖: 建議大家有條件的直接用谷歌,百度 ...
-
Width和Height應該是我們學習CSS時,最先接觸到的屬性了,一寬一高。 我們知道頁面當中的標簽分為塊級元素和行內元素,它們最大的區別就在於,塊級元素可以設置寬高,行內元素不能設置寬高。 舉例說明,我們塊級元素、行內元素各舉一例 塊級元素我們以div為例,div標簽是我們編寫頁面最常用的標簽了 ...
-
phpstorm是一款php集成開發環境軟體,集成了很多功能,不但有強大的代碼編輯及調試功能,還能連接資料庫。本文寫的就是如何用phpstorm來建立訪問wampserver資料庫,查詢輸出數據,方便我們開發工作。 1、新建資料庫 方法一:點擊wampserver的綠色圖標,直接選擇phpMyAdm ...
-
// 計算兩個時間差 dateBegin 開始時間 function timeFn(dateBegin) { //如果時間格式是正確的,那下麵這一步轉化時間格式就可以不用了 var dateEnd = new Date();//獲取當前時間 var dateDiff = dateEnd.getTim... ...
-
第 1 題:請設計一個攻擊伺服器的策略 難度:阿裡p5 ~ p7、騰訊t21 ~ t31 提供幾個常見的策略 前段時間很火的一個例子,偽造虛假npm包 + nodejs版本的payload nodejs的反序列化攻擊 第 2 題:請寫一個正則,去除掉html標簽字元串里的所有屬性,並保留src和hr ...
-
調用棧的英文名叫做Call Stack,大家或多或少是有聽過的,但是對於js調用棧的工作方式以及如何在工作中利用這一特性,大部分人可能沒有進行過更深入的研究,這塊內容可以說對我們前端來說就是所謂的基礎知識,咋一看好像用處並沒有很大,但掌握好這個知識點,就可以讓我們在以後可以走的更遠,走的更快! "博 ...