我們在看js**時經常會出現(...)三個點的東西,它究竟是什麼意思?又有何用處?
下面我就給大家分享一下三個點的那些事
三個點(...)真名叫擴充套件運算子,是在es6中新增加的內容,它可以在函式呼叫/陣列構造時,將陣列表示式或者string在語法層面展開;還可以在構造字面量物件時將物件表示式按照key-value的方式展開
字面量一般指[1,2,3]或者這種簡潔的構造方式,多層巢狀的陣列和物件三個點就無能為力了說白了就是把衣服脫了,不管是大括號()、花括號({}),統統不在話下,全部脫掉脫掉!
// 陣列
var number = [1,2,3,4,5,6]
console.log(...number) //1 2 3 4 5 6
//物件
var man =
console.log() /
它的用處很廣泛,我們隨處都可以看到,下面是幾個常見的例子
//陣列的複製
var arr1 = ['hello']
var arr2 =[...arr1]
arr2 // ['hello']
//物件的複製
var obj1 =
var obj2 =
ob12 //
//陣列的合併
var arr1 = ['hello']
var arr2 =['chuichui']
var mergearr = [...arr1,...arr2]
mergearr // ['hello','chuichui']
// 物件分合併
var obj1 =
var obj2 =
var mergeobj =
mergeobj //
var arr1 = [...'hello']
arr1 // ["h", "e", "l", "l", "o"]
可以和正常的函式相結合,靈活使用
function f(v,w,x,y,z)
var args = [2,3]
f(1,...args,4,...[5])
當我們想把陣列中的元素迭代為函式引數時,用它!
function f(x,y,z){}
var args = [1,2,3]
f(...args)
// 以前的方法
參考: js中三個預設方法call,applay,bind
這三個都是函式自帶的方法 function.prototype 這三個方法都能夠改變函式內部 this的指向,call call方法接收三個引數,第乙個是this指向,第二個,三個是傳遞給函式的實參,可以是數字,字串,陣列等型別的資料型別都可以 function fn n1,n2 fn.call t...
Python中三個雙引號的作用是什麼?
在python程式中,你有時可以看到三個連續的雙引號,那麼它的作用是什麼,在什麼場景下使用呢?作用一 進行多行注釋 我們都知道python中注釋是井號 但是如果你需要描述多行注釋的時候,就需要每行都寫乙個 或者,你可以採用連續的三個雙引號,如下 這是單行注釋 這是多行注釋第一行 這是多行注釋第二行 ...
漢語中「三個三個的,你認識多少?」
三個金念鑫 x n 三個水念淼 mi o 三個火念焱 y n 三個土念垚 y o 三個牛念犇 b n 三個手念掱 p 三個目念瞐 m 三個田念畾 l i 三個馬念驫 bi o 三個羊念羴 sh n 三個犬念猋 bi o 三個鹿念麤 c 三個魚念鱻 xi n 三個貝念贔 b 三個力念劦 lie 三個毛...