1. 程式人生 > >javascript中陣列及物件的合併

javascript中陣列及物件的合併

合併陣列的方法:

    1、陣列遍歷

       var arr1 = [ 1,2,3,4 ];
            var arr2 = [ 2,3,4,5 ];
            for( var i = 0 ; i < arr1.length; i ++){
                    arr2.push( arr1[ i ] );
            }
            console.log( arr2 );//2,3,4,5,1,2,3,4

    2、concat()

       var arr1 = [ 1,2,3,4 ];
            var arr2 = [ 2,3,4,5 ];
            arr2 = arr2.concat( arr1 );             console.log( arr2 );//2,3,4,5,1,2,3,4

合併物件的方法:

    1、Object.assign()

可用於合併兩個或兩個以上的js物件,也可以合併json物件
            var obj = {
            name:'三毛',
            height:'175cm',
            weight:'55kg',
            skills:['art','sing','dance']
            }
            var obj2 = {
            zi:'$200'
            }
            obj = Object.assign(obj,obj2);
            console.log(obj);//{name: "三毛", height: "175cm", weight: "55kg", skills: Array(3), zi: "$200"}

    2、$.extend()

jquery中的物件合併,本意為繼承,括號裡面的物件可以是js物件,也可以是json物件,但是必須有兩個或兩個以上的物件。
            <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<script type="text/javascript">
            var obj = {
            name:'三毛',
            height:'175cm',
            weight:'55kg',
            skills:['art','sing','dance']
            }
            var obj2 = {
            zi:'$200'
            }
            var obj3 = $.extend(obj,obj2);
            console.log(obj3);//{name: "三毛", height: "175cm", weight: "55kg", skills: Array(3), zi: "$200"}

    3、遍歷賦值

             var obj = {
            name:'三毛',
            height:'175cm',
            weight:'55kg',
            skills:['art','sing','dance']
            }
            var obj2 = {
            zi:'$200'
            }
            for( var value in obj ){
            obj2[value] = obj[value];
            }
            console.log(obj2);//{name: "三毛", height: "175cm", weight: "55kg", skills: Array(3), zi: "$200"}
            var obj = {
name: '三毛',
height: '175cm',
weight: '55kg',
skills: ['art', 'sing', 'dance']
}
var obj2 = {
zi: '$200'
}
for(var key in obj) {
if(obj.hasOwnProperty(key) === true) { 
//此處hasOwnProperty是判斷自有屬性,使用 for in 迴圈遍歷物件的屬性時,原型鏈上的所有屬性都將被訪問會避免原型物件擴充套件帶來的干擾
           obj2[key]=obj[key];
}
            }
            console.log(obj2);//{name: "三毛", height: "175cm", weight: "55kg", skills: Array(3), zi: "$200"}

相關推薦

javascript陣列物件合併

合併陣列的方法:    1、陣列遍歷       var arr1 = [ 1,2,3,4 ];             var arr2 = [ 2,3,4,5 ];             for( var i = 0 ; i < arr1.length; i ++

JavaScript陣列陣列的方法

一.陣列及陣列的方法 1.陣列的概念: 是值資料的集合,在JavaScript中陣列中的資料型別可以是不同的. 2.陣列的宣告: (1)var 陣列的名稱=new Array(); (2)var 陣列的名稱=[]; 3.陣列的初始化 (1)var 陣列的名稱=new Array(‘值1’

JavaScript陣列相關基礎操作實現

JavaScript中陣列操作比較靈活,關於js中陣列操作,寫了一些陣列操作程式碼,並在瀏覽器控制檯驗證。以下是js程式碼: <script type="text/javascript"> console.log("---------------JavaScript陣列相關實

javascript 獲取json物件的鍵構成的陣列

<!DOCTYPE html> <html>     <head>         <meta charset="utf-8">    &nb

javascript 獲取json物件的鍵構成的陣列

<!DOCTYPE html> <html>     <head>         <meta charset="utf-8">         <title></title>     </head

javascript對一個物件陣列按照物件某個屬性進行排序

在javascript中,物件和陣列是兩種不同的型別,這和php中的陣列概念不同。在javascript中,也有一些精妙的演算法,用來對一些物件進行排序。我在面試迅雷的時候,也拿到一道題,當時做題的時候考慮到時間,沒有去仔細研究,回來後再讀了一些方法,就知道真正的考點在哪裡了。 我們現在有一組“學

JavaScript陣列Array.prototype的常用的方法彙總

Array建構函式的API,我們可以通過控制檯列印Array.prototype可以知道有以下這些方法。這是Array的原型物件的所有方法,對陣列而言是可以繼承所有的這些方法的: 接下來,我們就以12個比較常見常用的API開始說起: 1. join() 將陣列轉化為字串,並且以某個

JavaScript的Date物件在Safari與IOS 日期出錯

首先我需要的展示的時間格式是這樣的2018/03/06 下面這個是開始時間 replace(/\-/g, "/"); 轉化成我想要的格式 $scope.endtime = $stateParams.endtime.replace(/\-/g, "/"); 下面這個是結束時間&n

javaScript陣列的幾種常用方法

1.splice(2,3,4)刪除陣列中任意項(三個引數). 2.splice(1,3)刪除從第一項開始的往後三項(兩個引數).(splice可以結合pop(),unshift(),push(),shift()來理解) 3.push()在陣列的末尾增加一項. 4.unshift()在陣列

JavaScript的window物件 (狀態列動態文字例項)

window物件在js中經常會提到, 在具體瞭解之前經常會感覺疑惑, window到底是個啥, 這篇就是用來介紹window給和我一樣的菜鳥 Window - 瀏覽器物件模型 為什麼說瀏覽器物件呢? 因為window物件它表示瀏覽器窗口或一個框架, 與windows作業系統沒啥關係

如何用JavaScript清除陣列多維陣列

實現方式有兩種: 第一種實現方式如下:  var arr=[['a','b','c',,,,,], [1,2,3,,,]];                  

javascript陣列物件的資料結構轉換

最近學到物件和陣列的相關知識,將遇到的兩道較複雜的練習題貼出來  var scoreObject = { "Tony": { "Math": 95, "English": 79, "Music": 68 }, "S

Javascript 的Object物件

Object:物件屬於複合的資料型別,在物件中可以儲存多個不同資料型別的屬性。 物件是動態的,可以新增屬性也可以刪除屬性。 物件的常見用法: 建立、設定、查詢、刪除、檢測、列舉 物件的分類: 1.內建物件:是由ECMAScript規範定義的物件。如:陣列、函式、日期和正則表示式。 2.宿主物

JS陣列物件的遍歷方法例項

一、陣列的遍歷: 首先定義一個數組 arr=['snow','bran','king','nightking']; 1、for迴圈,需要知道陣列的長度; 2、foreach,沒有返回值,可以不知道陣列長度; arr.forEach(function(ele,index

javascript怎麼判斷物件{}為空

時候通過AJAX方法呼叫返回的是一個JSON物件,而這個物件可能在開發過程中會沒有資料是一個空{}。 JavaScript判斷object/json 是否為空,可以使用jQuery的isEmptyObject()方法。 function isEmptyObject(obj) {

學習:JS陣列物件的之間的關聯、區別

在jscript中陣列和物件幾乎相同,兩者主要的差別是物件沒有自動長度屬性,而陣列沒有物件的屬性和方法。 陣列定址 使用方括號"[]"來定址陣列。方括號中是一個數值或一個值為整數的表示式。 將物件作為關聯陣列 通常,使用點運算子“.”訪問物件的屬性。例如, myOb

JavaScript陣列定義的幾種方法,以及關於陣列長度的討論

大家在使用JavaScript編寫指令碼語言的時候,尤其是習慣使用Java語言的朋友,定義了一個固定長度的陣列,但是使用了一個超出定義陣列的元素,程式並沒有報“陣列越界”錯誤,這到底是什麼原因呢?今天我們來分享一下! 1、陣列定義的四種方法: var arr_1 = ne

JavaScript陣列的應用

Array的應用   1)建立 new Array();new Array(size);new Array(element,element,...,element); 2)、Array物件屬性 constructor 返回對建立此物件的陣列函式的引用length 設定或者返回陣列中元素

ES6陣列物件的遍歷

在工作中經常會用到陣列或者物件的遍歷,for的一大痛點就是額外定義了變數,for迴圈一多,變數又容易衝突。ES6給出了新的遍歷的方法,我們一起來看一下 物件 forEach方法 var name = ['張三', '李四', '王五']; ['張三', '李

javascript的window物件的知識點

javascript中的window物件的知識點 內建物件定義:可以不需要宣告和建立,可以直接使用,內建物件全部為javascript關鍵字 window是內建物件,因為window使用的太頻繁了,所以一般window可以省略不寫,我們平時用的alert()其本質就是window.ale