国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【ES6】Proxy的高級用法,實現(xiàn)一個生成各種 DOM 節(jié)點的通用函數(shù)dom

這篇具有很好參考價值的文章主要介紹了【ES6】Proxy的高級用法,實現(xiàn)一個生成各種 DOM 節(jié)點的通用函數(shù)dom。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

下面的例子則是利用get攔截,實現(xiàn)一個生成各種 DOM 節(jié)點的通用函數(shù)dom。

<body>
</body>

<script>


const dom = new Proxy({}, {
  get(target, property) {
    return function(attrs = {}, ...children) {
      const el = document.createElement(property);
      for (let prop of Object.keys(attrs)) {
        el.setAttribute(prop, attrs[prop]);
      }
      for (let child of children) {
        if (typeof child === 'string') {
          child = document.createTextNode(child);
        }
        el.appendChild(child);
      }
      return el;
    }
  }
});

const el = dom.div({},
  'Hi, my name is ',
  dom.a({href: 'https://blog.csdn.net/qq_22744093?type=blog'}, 'kexuexiong'),
  '. I like:',
  dom.ul({},
    dom.li({}, 'The web'),
    dom.li({}, 'Food'),
    dom.li({}, '…actually that\'s it')
  )
);

document.body.appendChild(el);

</script>

輸出結果:
【ES6】Proxy的高級用法,實現(xiàn)一個生成各種 DOM 節(jié)點的通用函數(shù)dom,前端,es6文章來源地址http://www.zghlxwxcb.cn/news/detail-692543.html

到了這里,關于【ES6】Proxy的高級用法,實現(xiàn)一個生成各種 DOM 節(jié)點的通用函數(shù)dom的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 你是怎么理解ES6中Proxy的?使用場景?

    你是怎么理解ES6中Proxy的?使用場景?

    定義:?用于定義基本操作的自定義行為 本質(zhì):?修改的是程序默認形為,就形同于在編程語言層面上做修改,屬于元編程 (meta programming) 元編程(Metaprogramming,又譯超編程,是指某類計算機程序的編寫,這類計算機程序編寫或者操縱其它程序(或者自身)作為它們的數(shù)據(jù),或

    2024年03月13日
    瀏覽(22)
  • ES6中Promise、Async/await解決回調(diào)地獄、Proxy代理

    1.Promise 作為一些場景必須要使用的一個對象,比如說我們要發(fā)送一個請求,但是在發(fā)送這個請求之前我們需要以另一個請求返回的結果中的一個數(shù)據(jù)作為這次請求的參數(shù),也就是說這個請求必須在另一個請求后面,當然我們用setTimeout定時器寫一個延時函數(shù)也可以,但是當有

    2024年02月12日
    瀏覽(23)
  • 【ES5和ES6】數(shù)組遍歷的各種方法集合

    【ES5和ES6】數(shù)組遍歷的各種方法集合

    特點: 沒有返回值,只是針對每個元素調(diào)用func 三個參數(shù):item, index, arr ;當前項,當前項的索引,被遍歷的數(shù)組 for 循環(huán)可以在循環(huán)體中終止或跳過該循環(huán),forEach不可以 特點:返回新的arr, 每個元素為調(diào)用函數(shù)返回的結果 參數(shù): function:必選,數(shù)組中每個元素都會執(zhí)行的函

    2024年02月12日
    瀏覽(22)
  • ES6的一些高級技巧

    ES6(ECMAScript 2015)引入了許多新的功能和語法,其中一些功能可能相對較冷門,但非常實用。本文將介紹一些這樣的高級技巧,包括 Object.entries() Object.fromEntries() Symbol類型和Symbol屬性 WeakMap和WeakSet Promise.allSettled() BigInt Array.of Array.from .at和flat Object.entries()方法返回一個給定對象

    2024年01月19日
    瀏覽(14)
  • 【ES6】Promise.all用法

    【ES6】Promise.all用法

    Promise.all()方法用于將多個 Promise 實例,包裝成一個新的 Promise 實例。 上面代碼中,Promise.all()方法接受一個數(shù)組作為參數(shù),p1、p2、p3都是 Promise 實例,如果不是,就會先調(diào)用下面講到的Promise.resolve方法,將參數(shù)轉(zhuǎn)為 Promise 實例,再進一步處理。另外,Promise.all()方法的參數(shù)可以

    2024年02月09日
    瀏覽(17)
  • 【ES】筆記-ES6的函數(shù)rest參數(shù)用法

    es6中引入了rest參數(shù),樣式形如…xxx,用于獲取函數(shù)的多余參數(shù),這樣就不需要使用arguments對象了。rest參數(shù)搭配的一個變量是一個數(shù)組,該變量將多余的參數(shù)放入數(shù)組中。例如: 上面代碼的add函數(shù)是一個求和函數(shù),利用rest參數(shù),可以向該函數(shù)傳入任意數(shù)目的參數(shù)。 下面是一

    2024年02月13日
    瀏覽(14)
  • JavaScript之ES6高級語法(一)

    JavaScript之ES6高級語法(一)

    本文是我在學習過程中記錄學習的點點滴滴,目的是為了學完之后鞏固一下順便也和大家分享一下,日后忘記了也可以方便快速的復習。 今天學習的主要是關于ES6新語法知識的理解和應用 棧負責存放簡單數(shù)據(jù)類型,堆負責存放復雜數(shù)據(jù)類型,但是復雜數(shù)據(jù)類型會把內(nèi)容存在

    2024年02月09日
    瀏覽(24)
  • ES6-ES13用法(高頻面試題)

    1. ES6新增的方法 let和const,解構賦值、模板字符串、箭頭函數(shù)。 Symbol、Map、Set三種常用的數(shù)據(jù)類型。 Proxy重新定義了數(shù)據(jù)劫持的能力 Reflect定義了一套標準化的數(shù)據(jù)操作的方式 Promise確實的解決了異步邏輯嵌套及回調(diào)地獄問題。定義了異步邏輯的三種狀態(tài)pending、rejected、full

    2024年01月25日
    瀏覽(49)
  • 【ES6】Promise.allSettled的用法

    【ES6】Promise.allSettled的用法

    Promise.allSettled() 是一個Promise方法,用于處理一個Promise數(shù)組,返回一個新的Promise數(shù)組,每個元素對應原始Promise的狀態(tài)。這個方法可以用于處理多個異步操作,并且能夠獲取每個操作的結果和狀態(tài)。 下面是Promise.allSettled()的詳細代碼示例: 輸出結果: 在上面的代碼中,我們創(chuàng)

    2024年02月10日
    瀏覽(23)
  • 【ES6】Promise.race的用法

    【ES6】Promise.race的用法

    Promise.race()方法同樣是將多個 Promise 實例,包裝成一個新的 Promise 實例。 上面代碼中,只要p1、p2、p3之中有一個實例率先改變狀態(tài),p的狀態(tài)就跟著改變。那個率先改變的 Promise 實例的返回值,就傳遞給p的回調(diào)函數(shù)。 Promise.race()方法的參數(shù)與Promise.all()方法一樣,如果不是 Pr

    2024年02月10日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包