我正在寻找下面的任何替代方法来创建一个包含1到N的JavaScript数组,其中N仅在运行时已知.
var foo = [];
for (var i = 1; i <= N; i++) {
foo.push(i);
}
Run Code Online (Sandbox Code Playgroud)
对我而言,感觉应该有一种没有循环的方法.
任何人都可以给我一个简单的单词解释,说明为限速目的限制函数和去除函数之间的区别.
对我来说,两者似乎也做同样的事情.我查看了这两个博客,了解:
http://remysharp.com/2010/07/21/throttling-function-calls
http://benalman.com/projects/jquery-throttle-debounce-plugin/
我有一个对象数组.我想映射这个对象数组.我知道如何映射数组,但无法弄清楚如何映射对象数组.这是我到目前为止所做的:
我要映射的对象数组:
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) 我使用护照本地护照策略进行身份验证.在我的快递服务器中,我收到了一个注册帖子请求,我应该为新用户保存密码到db.但是我需要在保存到db之前散列密码.
但我不知道如何散列它,因为护照将通过散列登录密码凭证来验证用户,以匹配来自db的哈希密码.我应该如何哈希我的密码?
我正在使用这个模块.
我是流星的新手并做出反应.我一直在寻找使用流星开发基于投票的项目的最佳实践并做出反应.我试图在互联网上找到的一个问题是在流星中使用路由器的两个选项之一的利弊.
kadira:flow-router看起来非常简单,但我在github上看到很多项目实现了react-router.
关于meteor的两个路由器包的比较的任何想法?
我一直在使用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)
它只呈现一次,但我相信有更好的方法.
如何避免重新渲染?或者我怎么能制作不变的道具?
我试图在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.
当我们在控制台上定义这些变量时:
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中几乎每一个类型都是一个对象,并且都有全局对象的原型。为什么我们看不到最后两个原型属性?是关于属性描述符还是什么?我只是假设它有一个简单的答案。
不知何故,当组件由映射“生成”时,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)
我的期望是每个渲染的项目都会被“记忆”(并在控制台中显示日志)。
大多数时候,当我在github中查看项目时,我会看到lib /目录。
我只是在谷歌搜索是否有lib /目录的常规含义。但是我找不到很多。
我想知道lib /目录是什么,以便选择从哪里开始在github项目中查看。
具有lib /目录的项目。
我正在使用这样的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) 我正在用节点构建一个cli,当我不得不引用模块的文件路径时,我不明白它是如何工作的.
从节点的文档,它说require.main === module
.这些具体意味着什么?
javascript ×10
reactjs ×4
node.js ×3
arrays ×2
components ×1
conventions ×1
dictionary ×1
directory ×1
flow-router ×1
function ×1
getter ×1
github ×1
memo ×1
meteor ×1
object ×1
passport.js ×1
performance ×1
prototype ×1
react-router ×1
setter ×1
ubuntu ×1