成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

ES6中對象、函數(shù)、數(shù)組的擴(kuò)展

W_BinaryTree / 1384人閱讀

摘要:對象判斷兩個(gè)參數(shù)的值是否全等與類似不過區(qū)別在于返回返回用于對象的合并將參數(shù)中所有可枚舉的屬性復(fù)制到目標(biāo)對象返回目標(biāo)對象若有相同的屬性值后面的會覆蓋之前的值傳入一個(gè)對象返回一個(gè)數(shù)組包含對象中所有可遍歷的屬性的鍵名傳入一個(gè)對象返回一個(gè)數(shù)組包含

對象

Object.is(value1,value2)

判斷兩個(gè)參數(shù)的值是否全等,與 === 類似,不過區(qū)別在于 Object.is(+0, -0)返回false, Object.is(NaN, NaN)返回true

    Object.is("foo","foo") //true
    Object.is({},{}) //false

Object.assign(target,o1,o2...)

用于對象的合并將參數(shù)中所有可枚舉的屬性復(fù)制到目標(biāo)對象target,返回目標(biāo)對象
若有相同的屬性值,后面的會覆蓋之前的值

const target = {a:1, b:2, c:3}
const o1 = {b:4, d:5}
const newTarget = Object.assign(target, o1)

console.log(target) //{a:1, b:4, c:3, d:5}
console.log(Object.is(target,newTarget)) //true

Object.keys(obj)

傳入一個(gè)對象返回一個(gè)數(shù)組,包含對象中所有可遍歷的屬性的鍵名

const obj = {name: "lil", age: 3}
console.log(Object.keys(obj)) //[ "name", "age" ]

Object.values(obj)

傳入一個(gè)對象返回一個(gè)數(shù)組,包含對象中所有可遍歷的屬性的鍵值

const obj = {name: "lil", age: 3}
console.log(Object.values(obj)) //[ "lil", 3 ]

Object.entries(obj)

傳入一個(gè)對象返回一個(gè)數(shù)組,包含對象中所有可遍歷的屬性的鍵值對

const obj = {name: "lil", age: 3}
console.log(Object.entries(obj))
//[ [ "name", "lil" ], [ "age", 3 ] ]

Object.setPrototypeOf(obj,prototype)

用來設(shè)置對象的prototype對象,返回參數(shù)對象本身,這個(gè)方法是ES6
正式推薦的設(shè)置原型對象的方法,等同于

function foo(obj,proto) {
    obj.__proto__ = proto;
    return obj
}

Object.getPrototypeOf(obj)

傳入對象獲取對象的原型對象

函數(shù)

rest參數(shù)

reset用來獲取函數(shù)多余的參數(shù),將多余的參數(shù)放入數(shù)組中,可調(diào)用數(shù)組的方法

function foo(...rest) {
  return rest
}
console.log(foo(1,2,3)) //[1,2,3]
數(shù)組

擴(kuò)展運(yùn)算符

擴(kuò)展運(yùn)算符表示為...,可理解為rest參數(shù)的逆運(yùn)算
擴(kuò)展運(yùn)算符將一個(gè)數(shù)組轉(zhuǎn)為用逗號隔開的參數(shù)序列

const arr = [1,2,3,4]
console.log(arr) //1 2 3 4

將字符串轉(zhuǎn)換為數(shù)組

console.log([..."hello"]) //[ "h", "e", "l", "l", "o" ]

合并數(shù)組

const arr1 = [1,2,3]
const arr2 = [4,5,6]
const arr3 = [...arr1,...arr2]
console.log(arr3) //[ 1, 2, 3, 4, 5, 6 ]

Array.from()

用于將類數(shù)組或者可遍歷的對象轉(zhuǎn)為數(shù)組

const obj = {"0":"a","1":"b","2":"c",length:3}
console.log(Array.from(obj)) //[ "a", "b", "c" ]

console.log(Array.from("hello"))//[ "h", "e", "l", "l", "o" ]

Array.of()

將一組值轉(zhuǎn)換為數(shù)組,彌補(bǔ)了Array()的不足之處

Array.of(1,2,3) //[1, 2, 3]
Array(1,2,3) //[1, 2, 3]

Array.of(3) //[3]
Array(3) //[, , ,]

find()

返回?cái)?shù)組中滿足回調(diào)函數(shù)的第一個(gè)的值,全都不滿足則返回undefined

const arr = [1, 2, 30, 100, 60]
const result = arr.find(item => item > 30)
console.log(result) //100

findIndex()

find()用法類似,返回值為滿足回調(diào)函數(shù)的第一個(gè)值的下標(biāo)
全都不滿足則返回undefined

const arr = [1, 2, 30, 100, 60]
const result = arr.findIndex(item => item > 30)
console.log(result) //3

entries()

用于遍歷數(shù)組,返回一個(gè)遍歷器對象Object [Array Iterator]{}
可用for...of進(jìn)行循環(huán)遍歷

const arr = ["a", "b", "c"]
for (let [index, item] of arr.entries()) {
    console.log(index, item)
}
//0 "a"
//1 "b"
//2 "c"

keys()

用法與entries()一樣,區(qū)別在于keys()是對鍵名進(jìn)行遍歷而entries()
是對鍵值對進(jìn)行遍歷

const arr = ["a", "b", "c"]
for (let index of arr.keys()) {
    console.log(index)
}

includes()

發(fā)方法返回布爾值,檢測數(shù)組是否包含某個(gè)值

const arr = [1,2,"a",NaN]
arr.includes(1) //true
arr.includes(3) //false
arr.includes("a") //true
arr.includes(NaN) //true

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/106774.html

相關(guān)文章

  • ES6 ...操作符

    摘要:在語法中,操作符有兩種意義剩余語法,參數(shù)和展開語法,展開數(shù)組對象,作為函數(shù)數(shù)組對象的擴(kuò)展運(yùn)算符。使用和參數(shù)進(jìn)行操作其余參數(shù)傳給原始函數(shù)展開語法運(yùn)算則可以看作是參數(shù)的逆運(yùn)算。 在ES6語法中,...操作符有兩種意義:rest(剩余語法,rest參數(shù)) 和 spread(展開語法,展開數(shù)組/對象),作為函數(shù)、數(shù)組、對象的擴(kuò)展運(yùn)算符。 從某種意義上說,剩余語法與展開語法是相反的:剩余語法將多...

    MorePainMoreGain 評論0 收藏0
  • ES6標(biāo)準(zhǔn)入門》讀書筆記

    摘要:標(biāo)準(zhǔn)入門讀書筆記和命令新增命令,用于聲明變量,是塊級作用域。用于頭部補(bǔ)全,用于尾部補(bǔ)全。函數(shù)調(diào)用的時(shí)候會在內(nèi)存形成一個(gè)調(diào)用記錄,又稱為調(diào)用幀,保存調(diào)用位置和內(nèi)部變量等信息。等到執(zhí)行結(jié)束再返回給,的調(diào)用幀才消失。 《ES6標(biāo)準(zhǔn)入門》讀書筆記 @(StuRep) showImg(https://segmentfault.com/img/remote/1460000006766369?w=3...

    HollisChuang 評論0 收藏0
  • ES6rest參數(shù)和擴(kuò)展運(yùn)算符

    摘要:參數(shù)的形式為變量名擴(kuò)展運(yùn)算符是三個(gè)點(diǎn)。傳遞給函數(shù)的一組參數(shù)值,被整合成了數(shù)組。擴(kuò)展運(yùn)算符的應(yīng)用普通的函數(shù)調(diào)用上面代碼中,和這兩行,都是函數(shù)的調(diào)用,它們的都使用了擴(kuò)展運(yùn)算符。這時(shí),擴(kuò)展運(yùn)算符可以將其轉(zhuǎn)為真正的數(shù)組,原因就在于對象實(shí)現(xiàn)了。 rest參數(shù)和擴(kuò)展運(yùn)算符都是ES6新增的特性。rest參數(shù)的形式為:...變量名;擴(kuò)展運(yùn)算符是三個(gè)點(diǎn)(...)。 rest參數(shù) rest參數(shù)用于獲取函數(shù)...

    ccj659 評論0 收藏0
  • ES6學(xué)習(xí)總結(jié)(1)

    摘要:返回一個(gè)對象,遍歷對象自身和繼承的所有可枚舉屬性不含,與相同和在紅寶書中就已經(jīng)提到過屬性,表示的是引用類型實(shí)例的一個(gè)內(nèi)部指針,指向該實(shí)例的構(gòu)造函數(shù)的原型對象。 半個(gè)月前就決定要將ES6的學(xué)習(xí)總結(jié)一遍,結(jié)果拖延癥一犯,半個(gè)月就過去了,現(xiàn)在補(bǔ)起來,慚愧慚愧。 阮一峰的《ES6標(biāo)準(zhǔn)入門》這本書有300頁左右,除了幾個(gè)新的API和js語法的擴(kuò)展,真正有價(jià)值的內(nèi)容并不多。所謂存在即合理,每部分的...

    happyfish 評論0 收藏0
  • ES6學(xué)習(xí)手稿之基本類型擴(kuò)展

    摘要:它是一個(gè)通用標(biāo)準(zhǔn),奠定了的基本語法。年月發(fā)布了的第一個(gè)版本,正式名稱就是標(biāo)準(zhǔn)簡稱。結(jié)語的基本擴(kuò)展還有一些沒有在這里詳細(xì)介紹。 前言 ES6標(biāo)準(zhǔn)以及頒布兩年了,但是,好像還沒有完全走進(jìn)我們的日常開發(fā)。這篇文章從ES6的基本類型擴(kuò)展入手,逐步展開對ES6的介紹。 ECMAScript和JavaScript JavaScript是由Netscape創(chuàng)造的,該公司1996年11月將JavaSc...

    tommego 評論0 收藏0
  • ES6 知識整理一(es6快速入門)

    摘要:函數(shù)調(diào)用會在內(nèi)存形成一個(gè)調(diào)用記錄,又稱調(diào)用幀,保存調(diào)用位置和內(nèi)部變量等信息。等到運(yùn)行結(jié)束,將結(jié)果返回到,的調(diào)用幀才會消失。方法用于將一組值,轉(zhuǎn)換為數(shù)組。,和遍歷數(shù)組方法返回一個(gè)布爾值,表示某個(gè)數(shù)組是否包含給定的值,與字符串的方法類似。 ES6 簡介 ES6, 全稱 ECMAScript 6.0 ,是 JavaScript 的下一個(gè)版本標(biāo)準(zhǔn),2015.06 發(fā)版。 let 和 const...

    elva 評論0 收藏0

發(fā)表評論

0條評論

最新活動(dòng)
閱讀需要支付1元查看
<