我有一个表示当前时间的字符串:2015-11-24T19:40:00.如何在Javascript中解析此字符串以将此字符串表示的日期作为LOCAL TIME? 由于一些限制,我不能使用库moment,但允许使用jquery.我知道之前有人问过这个问题,但答案是用的moment
例如,如果我在加利福尼亚运行脚本,那么这个字符串将代表7PM太平洋时间,但如果我在纽约运行该脚本,那么这个字符串将代表东部时间?
我试过以下但Chrome和Firefox给了我不同的结果:
var str = "2015-11-24T19:40:00";
var date = new Date(str);
Run Code Online (Sandbox Code Playgroud)
Chrome将其用作UTC时间(Tue Nov 24 2015 11:40:00 GMT-0800 (Pacific Standard Time)),
但Firefox消耗它作为我当地的太平洋时间(Tue Nov 24 2015 19:40:00 GMT-0800 (Pacific Standard Time))
我尝试添加"Z" str,就像这样var date = new Date(str+"Z");,然后两个浏览器都给我UTC时间.是否有任何类似的信件"Z"告诉所有浏览器(至少chrome,Firefox和Safari)将字符串解析为本地时区?
如何编写正则表达式来匹配这个\"(反斜杠然后引用)?假设我有一个这样的字符串:
<a href=\"google.com\"> click to search </a>
Run Code Online (Sandbox Code Playgroud)
我需要\"用a 替换所有",所以结果看起来像:
<a href="google.com"> click to search </a>
Run Code Online (Sandbox Code Playgroud)
这个不起作用:str.replaceAll("\\\"", "\"")因为它只匹配报价.不知道如何绕过反斜杠.我可以先删除反斜杠,但我的字符串中还有其他反斜杠.
我有一个像这样的HTML列表:
<ul>
<li>Coffee</li>
<li>Tea</li>
<li>Milk</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
如何隐藏li项目并使其不占用任何空间?让我们说,我需要第一个项目(咖啡)是隐形的,所以结果将只包含茶和牛奶.我使用了css(或style ="visibility:hidden"),但它仍然占用了一些空间.
=======
注意:第一个li只是用于创建其他li项的一些模板.模板li在运行时生成,这就是我需要隐藏它的原因.我在生成其他产品(茶和牛奶)后最终将其除去,但在我生产茶和牛奶之前,咖啡仍然可见.
============
谢谢.答案是style ="display:none"
我不时听到人们说过,Perl中的正则表达式比其他语言更快.此外,一些在线文档还表示Perl在正则表达式处理方面具有优势.你能解释一下这是否属实,为什么?
我现在正在阅读oauth2,并试图了解其目的.从我阅读的所有资源中,似乎oauth2仅在具有某些用户和应用程序的webapp(比如游戏应用程序)想要访问用户的Facebook或Google数据(某些类型的数据,如姓名或电子邮件,等等).这部分对我来说很清楚.但是,我不清楚的事情如下:
我见过webapps,他们只是让用户注册ID和密码,然后他们将密码加密并将盐存储在数据库中.因此,当用户稍后登录时,他们会将用户输入的密码加密,并将此盐与数据库中的盐(在注册期间创建)进行比较.如果相等,则用户登录.这对我来说似乎不起誓.所以,如果这不是oauth,那么这个标准是什么?这样的"直接登录"还有其他标准吗?
假设我想允许用户注册并登录我的网站,但让他们通过第三方(如Facebook或Google)登录.这仅用于授权目的,并假设我的应用程序没有计划在他们的Facebook上发布或请求他们的Facebook数据,除了我可能想要使用他们的Facebook电子邮件作为我的webapp的用户ID.oauth2是否提供此类授权?
抱歉天真的问题,因为我最近只读过oauth.
所以我有一个列表,我从中获得一个并行流来填写地图,如下所示:
Map<Integer, TreeNode> map = new HashMap<>();
List<NodeData> list = some_filled_list;
//Putting data from the list into the map
list.parallelStream().forEach(d -> {
TreeNode node = new TreeNode(d);
map.put(node.getId(), node);
});
//print out map
map.entrySet().stream().forEach(entry -> {
System.out.println("Processing node with ID = " + entry.getValue().getId());
});
Run Code Online (Sandbox Code Playgroud)
这段代码的问题在于,当"放置数据"过程仍在进行时(因为它是并行的),地图正在被打印出来,因此,地图尚未从列表中接收到所有元素.当然,在我的真实代码中,不仅仅是打印出地图; 我使用地图来利用O(1)查找时间.
我的问题是:
如何使主线程等待,以便在打印出地图之前完成"放置数据"?我试图把"把数据"线程T内,做t.start()和t.join(),但是这并没有帮助.
也许在这种情况下我不应该使用并行流?列表很长,我只想利用并行性来提高效率.
java collections parallel-processing multithreading java-stream
抱歉愚蠢的问题.我不能慢慢记忆,谷歌搜索没有帮助我回答这个问题.
所以基本上给出了图G(V,E),我知道O(| V | ^ 2)或O(| E | ^ 2 + | V | ^ 2)被认为是多项式复杂度,因此是O(| E |*| V |)多项式也是?如果不是,它有什么样的复杂性?我相信它也不是伪多项式.
另一个问题是:O(m*n)是否也被认为是多项式,给定m和n是问题的两个独立输入的大小?我只想在这里澄清多项式时间的概念,并想知道O(m*n)的复杂类型是否有不同的名称.
这两个类:
WebSecurityConfigurerAdapter
GlobalAuthenticationConfigurerAdapter
Run Code Online (Sandbox Code Playgroud)
似乎对我做同样的事情。它们都提供了不同的方法configure(...)来自定义 WebSecurity,例如配置UserDetailsService. 在互联网上找到的一些示例中,我看到两个类都被扩展了(就像这个,http : //ryanjbaxter.com/2015/01/06/securing-rest-apis-with-spring-boot/):
@Configuration
class WebSecurityConfiguration extends GlobalAuthenticationConfigurerAdapter {...}
Run Code Online (Sandbox Code Playgroud)
和
@EnableWebSecurity
@Configuration
class WebSecurityConfig extends WebSecurityConfigurerAdapter {...}
Run Code Online (Sandbox Code Playgroud)
但在某些示例中,只WebSecurityConfigurerAdapter需要(扩展)。
我不确定两者之间的区别?哪一个能做而另一个不能做?或者如果它们都需要,那么它们中的哪一个用于 Spring 安全的哪个方面?
我看到的唯一区别是,@EnableWebSecurity它通常在 extends 类上方注释WebSecurityConfigurerAdapter,而不是在 extends 类中GlobalAuthenticationConfigurerAdapter
==============实验==================
我尝试删除 extends 的类GlobalAuthenticationConfigurerAdapter,并将与 UserDetailsService 相关的代码携带到扩展的类中WebSecurityConfigurerAdapter(实际代码请参见上面的链接),它仍然有效。
给定 n 个用户 (u_1, u_2,..., u_n) 和 k 个组 (g_1, g_2, ..., g_k),创建所有组的所有可能组合。基本上,最后每个组合都是一个Map<Integer,Integer>,其中第一个Integer是用户ID,第二个Integer是组ID。例如,[(u_1,g_1), (u_2,g_1).. ..,(u_n, g_1)] 是一种可能的组合。
将有 k^n 个组合。
我搜索并看到了类似的问题,但他们确实有一些不适用于我的问题的额外条件。就我而言,每组都没有限制,也没有均匀分布。
您能建议一种在 Java 中执行此操作的快速方法吗?
谢谢
到目前为止我的尝试:我尝试为每个用户的每种可能性创建一个 for 循环,但我面临无法定义 for 循环次数的问题。
所以我切换到递归,但坚持为函数的内部调用创建参数。不过仍在努力。
请注意,这不是“n 选择 k”。“n选k”是指所有用户都相同的情况,但这里的用户显然不相同。
好的。我为此创建了一个解决方案。基本上,这是一个动态规划问题。假设您已经为 j 个用户和 k 个位置创建了一个地图列表(组合)。要为 j+1 个用户和 k 个位置创建,需要 2 个循环:对于每个 Map,对于每个 i=1 到 k,Map.put(user_j+1, k))。Is 既是递归的又是迭代的。递归,因为您需要将旧地图传递给新的迭代。就是这样。
在我的 gradle.build 文件中开始使用 spring boot gradle 插件后,jenkins 上的构建失败。
classpath("org.springframework.boot:spring-boot-gradle-plugin:2.0.2.RELEASE")
Run Code Online (Sandbox Code Playgroud)
一切都在本地运行良好,包括构建、测试和 web 应用程序在 Jetty 上运行良好。唯一的问题是任务中 Jenkins 的构建失败artifactoryPublish。它说:
File '/var/lib/jenkins/jobs/release-my-project/workspace/build/libs/workspace-0.2.1-SNAPSHOT.jar' does not exists, and need to be published!
Run Code Online (Sandbox Code Playgroud)
不确定 gradleartifactoryPublish任务发生了什么。我认为任务来自詹金斯。
在使用spring boot gradle插件之前,我在gradle.build中的jar任务如下:
jar {
baseName = 'my-project'
from {
configurations.compile.collect {
it.isDirectory() ? it : zipTree(it)
}
configurations.runtime.collect {
it.isDirectory() ? it : zipTree(it)
}
}
manifest {
attributes 'Main-Class':'com.example.Application'
}
// Exclude manifest signature files
exclude 'META-INF/*.SF', 'META-INF/*.DSA', 'META-INF/*.RSA', 'META-INF/LICENSE'
}
Run Code Online (Sandbox Code Playgroud)
由于spring boot gradle插件禁用了jar任务,代之以bootJar任务,所以我配置bootjar任务如下:
bootJar { …Run Code Online (Sandbox Code Playgroud) java ×5
algorithm ×2
regex ×2
spring-boot ×2
big-o ×1
build ×1
collections ×1
combinations ×1
date ×1
gradle ×1
hidden ×1
html ×1
java-stream ×1
javascript ×1
jenkins ×1
login ×1
oauth-2.0 ×1
passwords ×1
performance ×1
perl ×1
spring ×1
timestamp ×1