小编Mar*_*cin的帖子

柯里化函数中第一个函数的命名约定

如果涉及到像这样的柯里化函数,是否有命名约定:

const someName = argA => argB => ...
const newFunction = someName(someArg)
Run Code Online (Sandbox Code Playgroud)

是否有命名someName声明的约定?喜欢用 init / create 等前缀吗?

javascript naming-conventions

6
推荐指数
1
解决办法
757
查看次数

Puppeteer $.eval 选择嵌套元素

可以说我给出的情况像这个页面

<div id="details-container" class="style-scope ytd-channel-about-metadata-renderer">
         <yt-formatted-string class="subheadline style-scope ytd-channel-about-metadata-renderer">Details</yt-formatted-string>
        <table class="style-scope ytd-channel-about-metadata-renderer">
          <tbody class="style-scope ytd-channel-about-metadata-renderer"><tr class="style-scope ytd-channel-about-metadata-renderer">
            <td class="label style-scope ytd-channel-about-metadata-renderer">
              <yt-formatted-string class="style-scope ytd-channel-about-metadata-renderer"></yt-formatted-string>
            </td>
            <td class="style-scope ytd-channel-about-metadata-renderer">
              <ytd-button-renderer align-by-text="" class="style-scope ytd-channel-about-metadata-renderer" button-renderer=""></ytd-button-renderer>
              <div id="captcha-container" class="style-scope ytd-channel-about-metadata-renderer"></div>
              <div id="email-container" class="style-scope ytd-channel-about-metadata-renderer"></div>
              <a id="email" target="_blank" class="style-scope ytd-channel-about-metadata-renderer" href="mailto:undefined" hidden=""></a>
            </td>
          </tr>
          <tr class="style-scope ytd-channel-about-metadata-renderer">
            <td class="label style-scope ytd-channel-about-metadata-renderer">
              <yt-formatted-string class="style-scope ytd-channel-about-metadata-renderer"><span class="deemphasize style-scope yt-formatted-string"> Location:   </span></yt-formatted-string>
            </td>
            <td class="style-scope ytd-channel-about-metadata-renderer">
              <yt-formatted-string class="style-scope ytd-channel-about-metadata-renderer">YourCountry</yt-formatted-string>
            </td>
          </tr>
        </tbody></table>
      </div>
Run Code Online (Sandbox Code Playgroud)

假设我需要获取“YourCountry”,我实际上如何获取此元素?

到目前为止我尝试过:

  const location …
Run Code Online (Sandbox Code Playgroud)

javascript css-selectors puppeteer apify

3
推荐指数
1
解决办法
6464
查看次数

从未定义的值中过滤数组

有人可以向我解释一下为什么在这种情况下:

const dataValues: ValueRange[] = res.data.valueRanges.filter((range: ValueRange) => range.values);

const formattedValues: Array<SheetData | undefined> = dataValues.map(this.formatSheetRanges);

const sheetData: Array<SheetData> = formattedValues.filter((sheetData: SheetData | undefined) => sheetDataGuard(sheetData));

function sheetDataGuard(data: SheetData | undefined): data is SheetData {
  return !!(<SheetData>data).user;
}
Run Code Online (Sandbox Code Playgroud)

sheetData 数组仍然会抱怨它的类型是

Array<SheetData | undefined>
Run Code Online (Sandbox Code Playgroud)

但如果我将最后一个过滤更改为:

const sheetData: Array<SheetData> = formattedValues.filter(sheetDataGuard);

Run Code Online (Sandbox Code Playgroud)

打字稿不再抱怨了吗?

typescript

3
推荐指数
1
解决办法
765
查看次数