小编May*_*nty的帖子

Javascript中数组的最大大小

上下文:我正在构建一个读取RSS提要的小站点,并在后台更新/检查提要.我有一个数组来存储要显示的数据,另一个存储已经显示的记录的ID.

问题:在事情开始变慢或缓慢之前,Javascript中的数组可以容纳多少项.我不是在对数组进行排序,而是使用jQuery的inArray函数进行比较.

该网站将保持运行,并且更新并且不太可能经常重新启动/刷新浏览器.

如果我应该考虑从数组中清除一些记录,那么在限制之后删除一些记录的最佳方法是什么,比如100项.

javascript arrays

100
推荐指数
4
解决办法
12万
查看次数

节点命令在Windows上的git bash终端中不起作用

我正在尝试node在我的git bash终端中运行该命令.当我运行node命令时,按Enter键时没有任何反应.将$消失,它只是离开上没有下一行闪烁的光标>.

My-PC MINGW32 /
$ node -v
v4.5.0

My-PC MINGW32 /
$ where node
C:\Program Files\nodejs\node.exe

My-PC MINGW32 /
$ node
_
Run Code Online (Sandbox Code Playgroud)

有人能告诉我这个问题是什么吗?

谢谢!!

windows node.js git-bash

12
推荐指数
1
解决办法
7795
查看次数

没有库的Google Calendar API示例

我正在寻找一个使用HTTP GET或POST使用Google Calendar API的简单示例

所有这些例子都需要这些用于语言X的巨大库.我只想要一个原始的http示例,该示例可以在任何语言中使用,并且不需要库.

https://www.googleapis.com/calendar/v3/users/me/calendarList/primary?key=mykey

但当然这不起作用,我认为您的Google API密钥没有关键选项,您需要以某种方式对其进行授权.

Java或JavaScript中的原始示例是理想的,

就像是,

HttpPost request = new HttpPost("https://www.googleapis.com/calendar/v3/users/me/calendarList/primary?key=mykey");
DefaultHttpClient client = new DefaultHttpClient();
client.getCredentialsProvider().setCredentials(
new AuthScope(AuthScope.ANY),
new UsernamePasswordCredentials(user, password));
HttpResponse response = client.execute(request);
Run Code Online (Sandbox Code Playgroud)

但.. ..有效,什么是用户/密码或如何验证Auth ...

任何帮助都非常感谢.

java authentication http google-calendar-api

7
推荐指数
1
解决办法
1411
查看次数

Node.js server.listen回调吗?

我有一个node.js应用程序,一旦服务器开始侦听,我需要运行一个命令。文档server.listen说:
server.listen(port, [hostname], [backlog], [callback])
但是当我尝试使用这种格式时,代码没有运行,但是没有错误消息出现。这是我的应用程序的侦听部分:

var spawn = require('child_process').spawn
function listen(port) {
    try {
        server.listen(port, "localhost",511, function() {
          spawn("open",["http://localhost:"+port+"/"])
        })
    } catch (e) {
        listen(port+1)
    }
}
Run Code Online (Sandbox Code Playgroud)



你们中的一些人要求查看我的代码的全部,所以这里是:

var http = require("http"),
    path = require("path"),
    fs = require("fs"),
    mime = require("mime"),
    port = 1
var server = http.createServer(function(req, resp) {
    if (req.url == "/action" && req.headers["command"]) {
        resp.writeHead(200, {
            "Content-Type": "text/plain"
        });
        console.log("Command sent: " + req.headers["command"])
        try {
            var out = eval(req.headers["command"])
            if (typeof out == …
Run Code Online (Sandbox Code Playgroud)

node.js

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

什么是`Cd`命令?

我正在编写一些代码,通过命令行浏览我的计算机(OSX 10.11.6),就像我一直这样,我写错了!(Bum-Bum-BUUUUM!)而不是输入:

cd USB
Run Code Online (Sandbox Code Playgroud)

我打字了

Cd USB
Run Code Online (Sandbox Code Playgroud)

什么都没发生,但它没有注册为无效命令.对此感到困惑,我做了一些调查:我检查了man条目.没有入场券.我发现源文件(/usr/bin/Cd)使用which Cd,然后cat编辑它:

#!/bin/sh
# $FreeBSD: src/usr.bin/alias/generic.sh,v 1.2 2005/10/24 22:32:19 cperciva Exp $
# This file is in the public domain.
builtin `echo ${0##*/} | tr \[:upper:] \[:lower:]` ${1+"$@"}
Run Code Online (Sandbox Code Playgroud)

这是什么,为什么会在这里?它与freeBSD有什么关系?

任何帮助都会很棒,谢谢!

macos bash freebsd

5
推荐指数
1
解决办法
242
查看次数

在数组中迭代未定义的方法

我最近发现,.map没有迭代由带孔数组创建的未定义,数组的各个索引已定义,但有些不是:

// Holed
var array = [];
array[0] = 1;
array[2] = 3;
array // => [1, undefined, 3];

// Not Holed
var array = [1, undefined, 3];
array // => [1, undefined, 3]; The "same" as Holed
Run Code Online (Sandbox Code Playgroud)

当涉及到迭代时,这两个应该相同的数组,以不同的方式定义,以不同的方式迭代(参见第一个发送)

这是我的问题,

  1. 有没有办法迭代有孔阵列?
  2. 我怀疑这些确切的字节实际上是不同的,而这种奇怪的行为是由于JavaScript的如何显示其没有定义,没有这些值undefined.我对么?对这种异常有任何潜在的解释吗?

非常欢迎任何帮助.谢谢!

javascript arrays

5
推荐指数
1
解决办法
1543
查看次数

从 png 数据数组创建动画 gif

我正在一个项目中使用 getUserMedia 从网络摄像头创建一组 png 图像数据。我现在正在尝试将此数组转换为一个动画 gif。

提前致谢,

PS:我只想使用纯 javascript,但如果我需要一个外部库,我将使用一个 演示代码:

<!Doctype html>
<html>
<head>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <title>getUserMedia API - jsFiddle demo by Vulpus</title>
<script type="text/javascript" src="LZWEncoder.js"></script>
<script type="text/javascript" src="NeuQuant.js"></script>
<script type="text/javascript" src="GIFEncoder.js"></script> 
<script type="text/javascript" src="b64.js"></script>
</head>
<body>
        <title>RecorderGif</title>
        <header>
            <h1>getUserMedia</h1>
        </header>
        <article>
            <video id="video" width="320" height="200" style="display:none" autoplay=""></video>
            <section>
                <button id="btnStart">Start video</button>
                <button id="btnStop">Stop video</button>
                <button id="btnSave">Download</button>             
                            </section>
            <canvas id="canvas" width="320" height="240"></canvas>
        </article>
<script type="text/javascript">//<![CDATA[ 
var encoder = new GIFEncoder();
encoder.setRepeat(0);
encoder.setDelay(250);
encoder.start();
window.onload = function() { …
Run Code Online (Sandbox Code Playgroud)

javascript png canvas gif getusermedia

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

如果不支持对serviceworkers的支持,则回退到清单文件

我正在开发一款支持Android Chrome和iOS Safari中"添加到主屏幕"功能的应用.由于我希望对这两个功能都提供通用脱机支持,但我只想使用我必须的清单文件,以便增加我的控制权.但是,iOS Safari不支持服务工作者,所以我的问题是如果不存在对Service Workers的支持,我怎么才能实例化缓存清单文件,更具体地说; 我知道我可以添加manifest='whatever.appcache'<html>用JavaScript代码,而是将浏览器,例如iOS的Safari浏览器,使用缓存?

html5 offline-caching cache-manifest service-worker browser-feature-detection

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

TypeScript:异步函数中的参数关键字

考虑一下我在我的一个项目中注意到的以下奇怪行为:

\n\n
async function hello() {\n  return arguments;\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

当 TypeScript 的编译目标设置为es3或时es5,上述文件无法编译,并出现以下错误:

\n\n
error TS2522: The \'arguments\' object cannot be referenced in an async function or method in ES3 and ES5. Consider using a standard function or method.\n\n2   return arguments;\n           ~~~~~~~~~\n
Run Code Online (Sandbox Code Playgroud)\n\n

但是,如果使用更高的编译目标(我已经测试过es2017esnext,则不会出现错误。

\n\n
\n\n

当 TypeScript 的编译目标设置为orarguments时,阻止它在异步函数中使用的关键字是什么?es3es5

\n\n

一些注意事项:

\n\n
    \n
  • 当在现代 JavaScript 中复制时,该函数不会抛出异常
  • \n
  • 此行为只能在async函数中复制
  • \n
\n\n
\n\n

我的假设

\n\n

我怀疑因为Promise需要在es3 …

javascript async-await typescript

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

Node.js 中的二进制字符串到缓冲区

我试图通过将字符流解析为 UTF-16 编码来将0and的字符串转换1为等效字符串。Buffer

例如:

var binary = "01010101010101000100010"
Run Code Online (Sandbox Code Playgroud)

结果将是以下缓冲区

<Buffer 55 54>
Run Code Online (Sandbox Code Playgroud)

请注意,Buffer.from(string, "binary")这是无效的,因为它创建一个缓冲区,其中每个单独的01被解析为它自己的拉丁一字节编码字符串。来自 Node.js 文档:

'latin1':一种将缓冲区编码为单字节编码字符串的方法(由 IANA 在 RFC 1345 第 63 页中定义,作为 Latin-1 补充块和 C0/C1 控制代码)。

'binary':'latin1' 的别名。

javascript binary buffer node.js

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