Javascript實用方法二

承接上一篇,javascript

Object

keys

object的keys方法可以獲取一個給定對象的全部鍵(key/屬性名)並以數組的形式返回。這個方法能夠用於鍵的篩選、匹配等。java

var basket = {
strawberry: 12,
banana: 20,
apple: 30,
juice: 20
};

console.log(Object.keys(basket)); 
//[ 'strawberry', 'banana', 'apple', 'juice' ]

create

create方法用於建立一個新的對象,可選參數(proto, [ propertiesObject ]),第一個爲原型,好比Array.prototype之類的,第二個爲須要給新建對象的一些新屬性之類的,這個參數對象的屬性名將是新建對象的屬性,值則是屬性描述符(value、writable、configurable等)。git

var o = Object.create({}, {p: {value: 42}});
var O = Object.create({}, {p: {value: 66, writable: true, enumerable: true}});
console.log(o.p); //42
console.log(O.p); //66
o.p = 20;
O.p = 80;
console.log(o.p); //42
console.log(O.p); //80

屬性描述符中writable默認爲false,所以o.p即使在後來從新賦值也是不能改變其值的,而O.p則可以在後來改變值,此外,create方法proto必須傳入相應參數,不然會報錯TypeError,固然以上代碼在嚴格模式下也會報錯,由於o.p被重寫- -es6

assign

assign方法,es6的新特性,支持傳參(target, …sources),用於將任意多個源對象的鍵值對添加的目標對象,相似於lodash的assign和underscore的extendOwn方法。github

var boy = {handsome: true, rich: true}, girl = {cute: true, hair: 'long'};
var couples = Object.assign({}, boy, girl);

console.log(couples); //{ handsome: true, rich: true, cute: true, hair: 'long' }

assign方法經常使用於框架層面的數據處理,好比你定義了一個client用於發送HTTP請求,使用的時候獲取接受到的參數以外本身可能得加上什麼默認的屬性。web

Number

isNaN

Number的isNaN方法用來判斷傳入值是不是NaN的值,與全局的isNaN方法不一樣的是它不會強制將傳入參數轉化爲數字類型,只有在參數是真正的數字類型,且值爲 NaN 的時候纔會返回 true。不過就本身而言全局的isNaN用的多一點,就用來判斷字符串是否是隻包含數字,數組

console.log(isNaN('123f')); //true
console.log(isNaN('123')); //true

此外,isFinite(value)方法用於判斷傳入參數是不是有窮數,isInteger(value)方法用於判斷傳入參數是不是整數。app

toFixed

toFixed方法用來將數字轉化爲特定的字符串,支持傳入參數(digits),0 < digits <= 20,在轉換的時候會自動進行四捨五入以及0補充。框架

var cool = 666.666;
console.log(cool.toFixed(1)); //666.7
console.log(cool.toFixed(6)); //666.666000

這段時間發生了不少事情,從待了116天的杭州來到北京,開始一段新的工做與生活。不捨、惆悵、激動、興奮等情緒交織纏綿…七匹狼,認識了其他六狼,很珍惜這段你們一塊兒努力一塊兒嗨皮的日子,尤記得夜爬寶石山,俯瞰西湖,English poor,哈哈哈…ui

向着夢想,go!baby!

如想了解更多,請移步個人博客

相關文章
相關標籤/搜索