小编Fur*_*anO的帖子

创建一个包含1 ... N的JavaScript数组

我正在寻找下面的任何替代方法来创建一个包含1到N的JavaScript数组,其中N仅在运行时已知.

var foo = [];

for (var i = 1; i <= N; i++) {
   foo.push(i);
}
Run Code Online (Sandbox Code Playgroud)

对我而言,感觉应该有一种没有循环的方法.

javascript arrays

985
推荐指数
54
解决办法
72万
查看次数

节流和去抖函数之间的区别

任何人都可以给我一个简单的单词解释,说明为限速目的限制函数和去除函数之间的区别.

对我来说,两者似乎也做同样的事情.我查看了这两个博客,了解:

http://remysharp.com/2010/07/21/throttling-function-calls

http://benalman.com/projects/jquery-throttle-debounce-plugin/

javascript

198
推荐指数
14
解决办法
5万
查看次数

如何在React中映射对象数组

我有一个对象数组.我想映射这个对象数组.我知道如何映射数组,但无法弄清楚如何映射对象数组.这是我到目前为止所做的:

我要映射的对象数组:

const theData = [
    {
        name: 'Sam',
        email: 'somewhere@gmail.com'
    },

    {
        name: 'Ash',
        email: 'something@gmail.com'
    }
]
Run Code Online (Sandbox Code Playgroud)

我的组件:

class ContactData extends Component {
    render() {
        //works for array
        const renData = this.props.dataA.map((data, idx) => {
            return <p key={idx}>{data}</p>
        });

        //doesn't work for array of objects
        const renObjData = this.props.data.map(function(data, idx) {
            return <p key={idx}>{data}</p>
        });

        return (
            <div>
                //works
                {rennData}
                <p>object</p>
                //doesn't work
                {renObjData}
            </div>
        )
    }
}


ContactData.PropTypes = {
    data: PropTypes.arrayOf(
        PropTypes.obj
    ),
    dataA: PropTypes.array
} …
Run Code Online (Sandbox Code Playgroud)

arrays components dictionary object reactjs

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

如何在保存到db之前哈希密码以与护照模块(护照本地)兼容

我使用护照本地护照策略进行身份验证.在我的快递服务器中,我收到了一个注册帖子请求,我应该为新用户保存密码到db.但是我需要在保存到db之前散列密码.

但我不知道如何散列它,因为护照将通过散列登录密码凭证来验证用户,以匹配来自db的哈希密码.我应该如何哈希我的密码?

我正在使用这个模块.

javascript node.js passport.js

8
推荐指数
1
解决办法
8027
查看次数

使用react-router而不是kadira有什么好处:flow-router for meteor

我是流星的新手并做出反应.我一直在寻找使用流星开发基于投票的项目的最佳实践并做出反应.我试图在互联网上找到的一个问题是在流星中使用路由器的两个选项之一的利弊.

kadira:flow-router看起来非常简单,但我在github上看到很多项目实现了react-router.

关于meteor的两个路由器包的比较的任何想法?

javascript meteor reactjs react-router flow-router

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

如何使道具不可变,以防止在React中重新渲染?

我一直在使用react.js创建一个小应用程序.我过分考虑了"表现".

所以我有一个名为"Spinner"的简单子组件.我的目标是确保此组件永远不会重新呈现.

这是我的组件:

import React, {PureComponent} from 'react';

export default class Spinner extends PureComponent {

render() {
    return (
        <div className="spinner">
            <div className="bounce1"></div>
            <div className="bounce2"></div>
            <div className="bounce3"></div>
        </div>
    )
}

}
Run Code Online (Sandbox Code Playgroud)

在使用'react-addons-perf'重新渲染时,组件总是渲染,我使用的是PureComponent,因为我希望该组件只渲染一次,我读到我可以使用不可变的道具,但我不知道我知道如何使这成为可能.

如果我做一些喜欢这个:

componentDidMount() {
    this.renderState = false;
}

shouldComponentUpdate(nextProps, nextState) {
    return (this.renderState === undefined) ? true : this.renderState;
}
Run Code Online (Sandbox Code Playgroud)

它只呈现一次,但我相信有更好的方法.

如何避免重新渲染?或者我怎么能制作不变的道具?

javascript performance reactjs

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

在ctrl + z之后,节点js仍在侦听端口

我试图在ubuntu上学习节点的一些功能,然后在我的控制台上按ctrl + z来停止我的服务器(为了重新启动服务器以识别我对代码的更改),节点仍然监听端口(在这种情况下3000).

然后,每次我必须通过打字找到pid

lsof -i tcp:3000
Run Code Online (Sandbox Code Playgroud)

并通过键入手动杀死它

sudo kill -9 pid_number_I_got
Run Code Online (Sandbox Code Playgroud)

我只是想知道它为什么还要听它,我不想每次都做这件事.有帮助吗?


代码

var http = require("http");

var server = http.createServer(function(req,res){
    console.log(req.url , req.method);
    res.end("hello \n");
});

server.listen(3000);
Run Code Online (Sandbox Code Playgroud)

答案是对的.键入ctrl + c,它可以工作.我正在输入ctrl + x.

javascript ubuntu node.js

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

函数与对象的原型属性在控制台上的可见性

当我们在控制台上定义这些变量时:

var a = function(){} ;
var b = {} ;
var c = new a();
Run Code Online (Sandbox Code Playgroud)

并在控制台上再次键入以下表达式:

a.prototype 
// we have an a object with properties constructor and __proto__
b.prototype
// no result and why ? Isn t the prototype the Object 
c.prototype
// no result here too.
Run Code Online (Sandbox Code Playgroud)

所以我知道js中几乎每一个类型都是一个对象,并且都有全局对象的原型。为什么我们看不到最后两个原型属性?是关于属性描述符还是什么?我只是假设它有一个简单的答案。

javascript prototype function

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

将 React.memo 与映射集合一起使用

不知何故,当组件由映射“生成”时,react.memo(或钩子版本)将无法工作。

代码示例: https: //codesandbox.io/embed/react-memo-example-iuqf4

const Item = ({ step }) => <div>{step.name}</div>;
const MemoItem = React.memo(Item, (prevProps, nextProps) => {
  console.info("memo"); //no console
  if (prevProps.show === nextProps.show) {
    return true;
  }
  return false;
});

const initialSteps = [{
    name: "Pim",
    show: true
  }, {
    name: "Christa",
    show: false
  }, {
    name: "Henk",
    show: true
  }, {
    name: "klaas",
    show: true
  }];

{steps.steps.map((step, 
    <MemoItem key={index} step={step} />
))}
Run Code Online (Sandbox Code Playgroud)

我的期望是每个渲染的项目都会被“记忆”(并在控制台中显示日志)。

memo reactjs

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

github仓库中lib目录的含义

大多数时候,当我在github中查看项目时,我会看到lib /目录。

我只是在谷歌搜索是否有lib /目录的常规含义。但是我找不到很多。

我想知道lib /目录是什么,以便选择从哪里开始在github项目中查看。

具有lib /目录的项目。

编排

吞咽

javascript directory conventions github

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

是否应该使用getter和setter作为私有变量?

我正在使用这样的JavaScript对象:

var obj = new Foob;
Run Code Online (Sandbox Code Playgroud)

我应该假装有私人的方式,并做:

obj.get('foo');
Run Code Online (Sandbox Code Playgroud)

或者我应该尝试直接访问:

obj.foo
Run Code Online (Sandbox Code Playgroud)

javascript getter setter

2
推荐指数
2
解决办法
8486
查看次数

require.main和module之间有什么区别?

我正在用节点构建一个cli,当我不得不引用模块的文件路径时,我不明白它是如何工作的.

从节点的文档,它说require.main === module.这些具体意味着什么?

javascript node.js

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