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

資訊專欄INFORMATION COLUMN

寫一個(gè)JS函數(shù)實(shí)現(xiàn)以下功能

xavier / 2784人閱讀

摘要:?jiǎn)栴}一求一個(gè)函數(shù)可以實(shí)現(xiàn)以下功能函數(shù)入?yún)⒁粋€(gè)數(shù)組,數(shù)組元素只能為三種或者期望返回值或者,滿足數(shù)組元素只要有一個(gè),返回?cái)?shù)組元素全為,返回?cái)?shù)組元素非的全部為,返回例如滿足,期望返回值滿足,期望返回值滿足,期望返回值滿足,期望返回值問(wèn)題二求一個(gè)函

問(wèn)題一、 求一個(gè)JS函數(shù)可以實(shí)現(xiàn)以下功能:

函數(shù)入?yún)ⅲ阂粋€(gè)數(shù)組,數(shù)組元素只能為三種:{flag: true}{flag: false} 或者""
期望返回值:true或者false,滿足:
1.數(shù)組元素只要有一個(gè){flag: false},返回false
2.數(shù)組元素全為"",返回false
3.數(shù)組元素非""的全部為{flag: true},返回true

例如

const array1 = [{flag: true}, {flag: false},  ""; // 滿足1,期望返回值false
const array2 = ["", "", "", "", "", ""]; // 滿足2,期望返回值false
const array3 = [{flag: true}, {flag: true},  ""]; // 滿足3,期望返回值true
const array4 = [{flag: true}, {flag: true},  {flag: true}]; // 滿足3,期望返回值true
問(wèn)題二 求一個(gè)JS函數(shù)可以實(shí)現(xiàn)以下功能:

函數(shù)入?yún)ⅲ阂粋€(gè)數(shù)組(以下稱為入?yún)?shù)組),數(shù)組元素只能為三種:{flag: true}、{flag: false} 或者""

期望返回值:一個(gè)length為2的數(shù)組(以下稱為結(jié)果數(shù)組). 滿足
1.結(jié)果數(shù)組的第一個(gè)元素為入?yún)?shù)組index為0、2、4、6等非奇數(shù)位元素組合符合問(wèn)題一的返回值
1.結(jié)果數(shù)組的第二個(gè)元素為入?yún)?shù)組index為1、3、5、7等奇數(shù)為元素組合符合問(wèn)題一的返回值

例如

const array1 = [{flag: true}, {flag: true},  {flag: true}, "", {flag: false}]; 

非奇數(shù)位(index等于0,2,4)組合 [{flag: true}, {flag: true}, {flag: false}] // 根據(jù)問(wèn)題一描述,結(jié)果false

奇數(shù)位為(index等于1,3)組合 [{flag: true}, ""] // 根據(jù)問(wèn)題一描述,結(jié)果為true

期望返回值[false, true]
示例代碼 問(wèn)題一:
function func (array) {
    let result = "";
    array.forEach((item) => {
        if (item !== "") {
            if (result === "") {
                result = item.flag;
            } else {
                result = result && item.flag;
            }
        }
    })
    return !!result;
}
問(wèn)題二:
function func2 (array) {
    let result = ["", ""];
    array.forEach((item, index) => {
        if (item !== "") {
            if (result[index % 2] === "") {
                result[index % 2] = item.flag;
            } else {
                result[index % 2] = result[index % 2] && item.flag;
            }
        }
    });
    result.forEach(item => { item = item && true; })
    return result;
}

感覺自己寫的過(guò)程太麻煩了,有沒有更簡(jiǎn)單的寫法呢

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

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

相關(guān)文章

  • javascript模塊化(二)--RequireJS初探

    摘要:看完視頻初步認(rèn)識(shí)了一下,以及模塊化開發(fā)的概念,在此做一下總結(jié)。所以應(yīng)該將功能抽象成模塊。并且非常耗性能解決辦法,在滾動(dòng)條正在運(yùn)動(dòng)或者已經(jīng)到達(dá)目的地,就不應(yīng)該執(zhí)行動(dòng)畫。 前言:在慕課網(wǎng)上跟著視頻《側(cè)邊工具欄開發(fā)》做了一遍,用到了jquery操作DOM,其中,用requirejs管理模塊依賴,然后自定義了兩個(gè)模塊它們都依賴jquery,并且其中一個(gè)自定義模塊依賴另一個(gè),所以要暴露出接口???..

    edgardeng 評(píng)論0 收藏0
  • 《Node.js設(shè)計(jì)模式》Node.js基本模式

    摘要:回調(diào)函數(shù)是在異步操作完成后傳播其操作結(jié)果的函數(shù),總是用來(lái)替代同步操作的返回指令。下面的圖片顯示了中事件循環(huán)過(guò)程當(dāng)異步操作完成時(shí),執(zhí)行權(quán)就會(huì)交給這個(gè)異步操作開始的地方,即回調(diào)函數(shù)。 本系列文章為《Node.js Design Patterns Second Edition》的原文翻譯和讀書筆記,在GitHub連載更新,同步翻譯版鏈接。 歡迎關(guān)注我的專欄,之后的博文將在專欄同步: Enc...

    Seay 評(píng)論0 收藏0
  • 如何構(gòu)建通用 api 中間層

    摘要:是在收到響應(yīng)后執(zhí)行的函數(shù),可以不用返回。一步步介紹了如何構(gòu)建以及使用中間層,來(lái)統(tǒng)一管理接口地址,最后還介紹了下中間件等高級(jí)功能。 零、問(wèn)題的由來(lái) 開門見山地說(shuō),這篇文章是一篇安利軟文~,安利的對(duì)象就是最近搞的 tua-api。 顧名思義,這就是一款輔助獲取接口數(shù)據(jù)的工具。 發(fā)請(qǐng)求相關(guān)的工具辣么多,那我為啥要用你呢? 理想狀態(tài)下,項(xiàng)目中應(yīng)該有一個(gè) api 中間層。各種接口在這里定義,業(yè)務(wù)...

    BingqiChen 評(píng)論0 收藏0
  • Node入門

    摘要:我們給某個(gè)方法傳遞了一個(gè)函數(shù),這個(gè)方法在有相應(yīng)事件發(fā)生時(shí)調(diào)用這個(gè)函數(shù)來(lái)進(jìn)行回調(diào)。當(dāng)回調(diào)啟動(dòng),我們的函數(shù)被觸發(fā)的時(shí)候,有兩個(gè)參數(shù)被傳入和。最后,我們調(diào)用完成響應(yīng)。創(chuàng)建文件并寫入以下內(nèi)容好了。 我們來(lái)把目標(biāo)設(shè)定得簡(jiǎn)單點(diǎn),不過(guò)也要夠?qū)嶋H才行: 用戶可以通過(guò)瀏覽器使用我們的應(yīng)用。當(dāng)用戶請(qǐng)求http://domain/start時(shí),可以看到一個(gè)歡迎頁(yè)面,頁(yè)面上有一個(gè)文件上傳的表單。 我們來(lái)分解...

    姘擱『 評(píng)論0 收藏0
  • 代碼測(cè)試覆蓋率分析

    摘要:背景最近我們前端團(tuán)隊(duì)在重構(gòu)大量的組件,為了保證代碼質(zhì)量,我要求團(tuán)隊(duì)中的成員必須編寫單元測(cè)試,并且測(cè)試覆蓋率達(dá)到以上??偨Y(jié)對(duì)一個(gè)持續(xù)集成的項(xiàng)目來(lái)說(shuō),單元測(cè)試非常重要,同時(shí)最好具有較高的測(cè)試覆蓋率。 背景 最近我們前端團(tuán)隊(duì)在重構(gòu)大量的 UI 組件,為了保證代碼質(zhì)量,我要求團(tuán)隊(duì)中的成員必須編寫單元測(cè)試,并且測(cè)試覆蓋率達(dá)到 80% 以上。那么問(wèn)題來(lái)了,為什么是 80% 的覆蓋率? 這是一個(gè)硬性...

    kevin 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

xavier

|高級(jí)講師

TA的文章

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