摘要:在,非對象的參數將被強制轉換為一個對象。方法方法方法一些類型轉換的例子求輸出值求輸出值具體解釋戳這里功能是實現了,,不過代碼有待改進
實現函數,類似jquery鏈式調用
var origin = [ {id:1,title:"title1"}, {id:2,title:"abcd"}, {id:3,title:"title2"}, {id:4,title:"efg"} ]; var find = function(data){ this.data = data; this.where = function(obj){ var key = Object.keys(obj), val = obj[key]; this.data = this.data.filter(function(x){ return val.test(x[key]); }) return this; }; this.order = function(key,val){ //不造desc啥意思 return this.data.sort(function(s1,s2){ return s2[key] - s1[key] }); } return { data:this.data, where:this.where, order:this.order } } var result = find(origin).where({"title":/d$/}).order("id","desc"); //desc 非遞增 console.log(result);實現目前一些主流框架的循環渲染
var items = [ {name:"item1"}, {name:"item2"} ]; var str = "{{item.name}}"; var ParseDom = function(str){ var reg1 = /sali-for="[a-zA-Zs]+"/gi, reg2 = /{{2}[a-zA-Z.]+}{2}/gi, reg3 = /.[a-zA-Z]+/gi, len = items.length; var temp = str.replace(reg1,""), fill = str.match(reg2)[0], key = str.match(reg2)[0].match(reg3)[0].slice(1), clone_temp ="", str = ""; for(var i=0;i有一個長度為100的數組,以優雅的方式求出該數組的前10個元素之和 var aa = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15], sum = 0; sum = a.slice(0,11).reduce(function(pre,current){ return pre + current; }); console.log(sum);不使用loop循環,創建一個長度為10的數組,并且每個元素的值等于于它的下標// 方法1: var q = Array(10).join(",").split(",").map(function(item,idx){ return idx; }); console.log(q); // 方法2: Object.keys(String(Array(11)); // 在ES5,如果此方法的參數不是一個對象(原始的),那么它會造成 TypeError。 // 在ES2015,非對象的參數將被強制轉換為一個對象。 // 方法3: Array.from({length:10},(v,i)=>i) // 方法4: [...Array(10).keys()] // 方法5: Array(10).fill().map((v,i)=>i)一些類型轉換的例子:
求輸出值1
http://frontenddev.org/link/c...
http://javascript.ruanyifeng....
http://www.cnblogs.com/rubylo...var test = (function(a){ this.a = a; return function(b){ return this.a + b; } }(function(a,b){ return a; }(1,2))) console.log(test(4)) //5求輸出值2var a = {n:1}; var b = a; a.x = a = {n:2}; alert(a.x); // --> undefined alert(b.x); // --> {n:2}具體解釋:戳這里
功能是實現了,,不過代碼有待改進^^
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/80346.html
相關文章
JavaScript填坑史
摘要:和深入理解在和深入理解這篇博客里筆者曾做過總結,我們知道試單線程的產物,兩個函數就是利用了插入代碼的方式實現了偽異步,和的原理實際上是一樣的。綜上所述,其實終歸是單線程產物。無論如何異步都不可能突破單線程這個障礙。 說明:??這是筆者平時積累的一些覺得比較有意思或是比較有難度的JavaScript題目理解和心得,會保持長期更新。 1.setTimeout和setInterval深入理解...
leetcode小題解析
摘要:如果兩者相等,則認為兩個單詞是同素異形體所以需要慢慢進行嘗試來弄清楚哪些是合法的數字。代碼去除前后的空格小數點前面不能出現和小數點前面不能出現,并且需要有數字保證后面也有數字符號只能再位和后面一位 描述Given an array of integers, return indices of the two numbers such that they add up to a spec...
leetcode小題解析
摘要:如果兩者相等,則認為兩個單詞是同素異形體所以需要慢慢進行嘗試來弄清楚哪些是合法的數字。代碼去除前后的空格小數點前面不能出現和小數點前面不能出現,并且需要有數字保證后面也有數字符號只能再位和后面一位 描述Given an array of integers, return indices of the two numbers such that they add up to a spec...
《JavaScript設計模式與開發實踐》 —— <閱讀小札·一>
摘要:閱讀小札一閱讀前自大學課上,就開始接觸設計模式,但對設計模式卻鮮有研究與實踐。第二部分是核心部分,由淺到深講解個設計模式。設計模式遵循的原則所有設計模式罪訓的一條原則就是找出程序中變化的地方,并將變化封裝起來。 閱讀小札 · 閱讀前 自大學Java課上,就開始接觸設計模式,但對設計模式卻鮮有研究與實踐。最近向公司反映和游說技術提升,得以獲得公司提供購書機會,借此認真學習前端學習之路的...
還在用Synchronized?Atomic你了解不?
摘要:失敗重試自旋比如說,我上面用了個線程,對值進行加。我們都知道如果在線程安全的情況下,這個值最終的結果一定是為的。那就意味著每個線程都會對這個值實質地進行加。 前言 只有光頭才能變強 之前已經寫過多線程相關的文章了,有興趣的同學可以去了解一下: https://github.com/ZhongFuCheng3y/3y/blob/master/src/thread.md showImg(h...
發表評論
0條評論
閱讀 3220·2023-04-25 18:43
閱讀 899·2021-11-24 09:39
閱讀 1367·2021-10-14 09:43
閱讀 3899·2021-09-22 15:58
閱讀 1913·2019-08-29 17:18
閱讀 419·2019-08-29 14:14
閱讀 3085·2019-08-29 13:01
閱讀 1622·2019-08-29 12:33