小编cda*_*win的帖子

浏览器中的ES6:Uncaught SyntaxError:意外的令牌导入

我是ES6的新手(ECMAScript 6),我想在浏览器中使用它的模块系统.我读过ES6受Firefox和Chrome支持,但我收到以下错误export

Uncaught SyntaxError: Unexpected token import

我有一个test.html文件

<html>
    <script src="test.js"></script>
<body>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

和一个test.js文件

'use strict';

class Test {

    static hello() {
        console.log("hello world");
    } 
}

export Test;    
Run Code Online (Sandbox Code Playgroud)

为什么?

html javascript module ecmascript-6 es6-modules

74
推荐指数
4
解决办法
9万
查看次数

快速找到与PostgreSQL相似的字符串

我需要在表中创建类似字符串的排名.

我有下表

create table names (
name character varying(255)
);
Run Code Online (Sandbox Code Playgroud)

目前,我正在使用提供该功能的pg_trgm模块similarity,但我遇到了效率问题.我创建了一个像Postgres手册建议的索引:

CREATE INDEX trgm_idx ON names USING gist (name gist_trgm_ops);
Run Code Online (Sandbox Code Playgroud)

我正在执行以下查询:

select (similarity(n1.name, n2.name)) as sim, n1.name, n2.name
from names n1, names n2
where n1.name != n2.name and similarity(n1.name, n2.name) > .8
order by sim desc;
Run Code Online (Sandbox Code Playgroud)

查询有效,但是当你有数百个名字时,它确实很慢.此外,也许我忘了一点SQL,但我不明白为什么我不能使用条件and sim > .8没有得到"列sim不存在"错误.

我想要任何提示使查询更快.

sql postgresql text similarity postgresql-performance

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

以对数标度计算段的长度

我想计算一系列事件的一条线的长度.

我正在使用以下代码执行此操作.

var maxLineLength = 20;
var lineLen = function(x, max) {
    return maxLineLength * (x / max);
}
var events = [0.1, 1, 5, 20, 50];
var max = Math.max.apply(null, events);
events.map(function (x) {
    console.log(lineLen(x, max));
});
Run Code Online (Sandbox Code Playgroud)

这是有效的,但我使用线性缩放,而我想使用对数,因为我不希望小事件在存在大事件时变得太小.

我修改了lineLen函数,如下所示,但是 - 显然 - 它不适用于事件等于1,因为1的日志为零.我想显示事件等于一(适当缩放)而不是使它们变为零.我还需要正数来保持正数(0.1变为负数)

我应该如何修改lineLen以使用对数标度?

var maxLineLength = 20;
var lineLen = function(x, max) {
   return maxLineLength * (Math.log(x) / Math.log(max));
}
var events = [0.1, 1, 5, 20, 50];
var max = Math.max.apply(null, events);
events.map(function (x) {
    console.log(lineLen(x, max)); …
Run Code Online (Sandbox Code Playgroud)

javascript logarithm

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

如何制作没有节点边缘重叠的力导向布局

我正在尝试更好地使用力导向布局算法(对于有向图)基本算法工作,即满足以下代码中的isStable条件并且算法结束,但边和节点可以重叠.所以我想在边缘的中间添加一些虚拟顶点(如下图所示),这应该解决这个问题,因为虚拟顶点会使边缘排斥其他边缘和节点.

在此输入图像描述

我添加了addDummies方法,该方法对于不是循环的每个边添加一个节点.我将添加的节点称为midNodes.

然后在每次迭代(迭代方法)中,我将midNodes的位置设置在边缘的中间.剩下的就是旧算法.

我获得了一个没有边缘重叠的更好的布局,但是结果条件从未得到满足,而且,绘图不是很好,因为midNodes在中心节点周围形成一种"甜甜圈",如下图所示( midNodes在红色圆圈内)

在此输入图像描述

我正在寻找一个算法的详细描述,该算法在边缘上使用虚拟节点或任何建议使算法终止并具有更好的绘图(我希望midNodes不要将其他节点排斥到外部区域)

我是否应该将中间节点的新边缘添加到旧节点?

一个解决方案可能是改变isStable条件,但这个数字通常可以保证图形的布局正确,所以我不想触摸它.

编辑:我以这种方式使用以下代码

var layouter = new Graph.Layout.Spring();
while !(layouter.isStable()) {
    layouter.iterate(1);
}
Run Code Online (Sandbox Code Playgroud)

以下是当前代码的摘录

Graph.Layout.Spring = function() {
    this.maxRepulsiveForceDistance = 10;
    this.maxRepulsiveForceDistanceQ = this.maxRepulsiveForceDistance * this.maxRepulsiveForceDistance;
    this.k = 2.5;
    this.k2 = this.k * this.k; 
    this.c = 0.01;

    this.maxVertexMovement = 0.2;

    this.damping = 0.7;
};
Graph.Layout.Spring.prototype = {
resetForUpdate : function() {
    this.addDummies();
    this.currentIteration = 0;
    this.resetVelocities();
},

reset : function() {
    this.pastIterations = 0;
    this.currentIteration = 0;
    this.layoutPrepare();
    this.resetForUpdate();
},


isStable: function() {
    var …
Run Code Online (Sandbox Code Playgroud)

javascript algorithm graph graph-layout force-layout

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

平移,准确定义

滚动和平移有什么区别?平移是否被识别为拖动图像/背景的动作,而滚动仅在您使用滚动条时?

而且,拖动和平移有什么区别?

当我拖动谷歌地图的地图,哪个术语是合适的,拖动或平移???

user-interface scroll terminology drag panning

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

Log4j:如何为多个appender定义公共布局和ConversionPattern

我的log4j配置中有多个appender,我想知道是否可以为所有这些定义一次布局和转换模式.即我有

log4j.appender.CA=org.apache.log4j.ConsoleAppender
log4j.appender.CA.layout=org.apache.log4j.PatternLayout
log4j.appender.CA.layout.ConversionPattern=%d{yyyy/MM/dd HH:mm:ss} %-5p %c %x - %m%n

log4j.appender.FA=org.apache.log4j.RollingFileAppender
log4j.appender.FA.MaxBackupIndex=0
log4j.appender.FA.MaxFileSize=100Mb
log4j.appender.FA.File=log/my.log
log4j.appender.FA.layout=org.apache.log4j.PatternLayout
log4j.appender.FA.layout.ConversionPattern=%d{yyyy/MM/dd HH:mm:ss} %-5p %c %x - %m%n
Run Code Online (Sandbox Code Playgroud)

我想知道是否以及如何定义每个appender配置的最后两行只有一次.

java logging log4j

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

使用递归查询访问有向图,就好像它是一个无向图

我需要您关于访问存储在数据库中的有向图的帮助.

请考虑以下有向图

1->2 
2->1,3 
3->1
Run Code Online (Sandbox Code Playgroud)

表存储这些关系:

create database test;
\c test;

create table ownership (
    parent bigint,
    child  bigint,
    primary key (parent, child)
);

insert into ownership (parent, child) values (1, 2);
insert into ownership (parent, child) values (2, 1);
insert into ownership (parent, child) values (2, 3);
insert into ownership (parent, child) values (3, 1);
Run Code Online (Sandbox Code Playgroud)

我想提取从节点可到达的图形的所有半连接边(即忽略方向的连接边).即,如果我从parent = 1开始,我想要以下输出

1,2
2,1
2,3
3,1
Run Code Online (Sandbox Code Playgroud)

我正在使用postgresql.

我修改了Postgres手册上例子来解释递归查询,并且我已经调整了连接条件以"向上"和"向下"(这样做我忽略了方向).我的查询如下:

\c test

WITH RECURSIVE graph(parent, child, path, depth, …
Run Code Online (Sandbox Code Playgroud)

sql postgresql recursion graph common-table-expression

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

Java的时态库

我正在寻找Java的时态库,即允许存储相同概念的多个历史版本的库.我正在寻找一个具有API的库,可以执行以下操作:

Instant i1 = Instant.valueOf("2010-01-01");
Instant i2 = Instant.valueOf("2010-01-02");
Attribute<String> a =  ....
a.setValue(i1, "String as of 2010-01-01");
a.setValue(i2, "String as of 2010-01-02");
Run Code Online (Sandbox Code Playgroud)

您可以在Martin Fowler的文章中找到关于时间问题的讨论

我发现的一个库是JTemporal,这对我来说似乎相当不错,但它并不完整,缺乏对Hibernate持久性的支持.我也想支持时间集,即在精确的时间点定义的集合.JTemporal就是这样做的,但坚持TemporalSet并不容易.

java time hibernate temporal

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

如何创建Google地图(可拖动地图)等用户界面?

我必须绘制一个包含许多节点的图形,我认为像谷歌地图提供的用户界面可以很好地导航图形.我目前正在为我的应用程序(Web应用程序)使用Java:我应该使用哪些技术/库来构建像谷歌地图这样的界面?什么方法?

编辑:我主要对创建一个具有缩放功能的可拖动地图感兴趣
edit2:我不是在寻找问题的确切解决方案,而是为了一些起点

javascript java user-interface graph

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

尝试使用Erwin Vervaet的框架存储时态集合并获取ClassCastException

我正在尝试使用Erwin Vervaet的Bitemporal 框架与Hibernate存储一个时态集合,而不是像他的示例中那样存储时态属性。(有框架的介绍这里

我正在尝试存储随时间变化的地址集合,即一个人可以同时具有多个地址,并且这组地址可以更改。

映射有效,我的意思是表是在数据库中创建的,但是出现以下运行时错误:

java.lang.ClassCastException: com.ervacon.bitemporal.AddressSet cannot be cast to java.util.Collection
Run Code Online (Sandbox Code Playgroud)

I don't understand the error. I understand a cast is being done when Hibernate tries to build the addresses bag of Person, but why does it get a ClassCastException? If I comment out the mapping of value in the entity-name="AddressSet" mapping, I have no error, but the addresses aren't saved. So the problem is in that mapping I believe.

I also don't understand …

java hibernate temporal

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