小编St.*_*rio的帖子

理解术语和符号 JavaScript

考虑秒。ECMA-262 的11.2

Syntax
MemberExpression :
    PrimaryExpression
    FunctionExpression
    MemberExpression [ Expression ]
    MemberExpression . IdentifierName
    new MemberExpression Arguments
NewExpression :
    MemberExpression
    new NewExpression
CallExpression :
    MemberExpression Arguments
    CallExpression Arguments
    CallExpression [ Expression ]
    CallExpression . IdentifierName
Arguments :
    ( )
    ( ArgumentList )
ArgumentList :
    AssignmentExpression
    ArgumentList , AssignmentExpression
LeftHandSideExpression :
    NewExpression
    CallExpression
Run Code Online (Sandbox Code Playgroud)

主要表达式如下

PrimaryExpression :
    this 
    Identifier 
    Literal 
    ArrayLiteral 
    ObjectLiteral 
    ( Expression )
Run Code Online (Sandbox Code Playgroud)

一个问题是:

( Expression )PrimaryExpression辩护中是什么意思?

{prop: …

javascript

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

如何将光标位置设置为输入的左上边缘

让我有一个如下输入字段:

在此输入图像描述

如何将光标张贴设置到此输入字段的左上角?

html css

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

声明区域和范围之间有什么区别

关于声明区域:

每个名称都在程序文本的某些部分中引入,称为声明性区域,这是该名称有效的程序的最大部分.

关于范围:

通常,每个特定名称仅在称为其范围的程序文本的一些可能不连续的部分内有效.

它们之间有什么区别?

c++ scope

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

通常不合格的函数名查找与变量名的查找不同吗?

请考虑以下代码:

#include <iostream>

int a=5;//1
extern int a;//2

int main(){ cout << a; }
Run Code Online (Sandbox Code Playgroud)

在非限定名称查找声明期间,将找到#1,并且在找到#1之后,非限定名称查找结束.

但考虑另一个例子:

#include <iostream>

void foo() { cout << "zero arg"; }
void foo(int a) { cout << "one arg"; }

int main(){ foo(4); }
Run Code Online (Sandbox Code Playgroud)

在那种情况下,void foo();首先会找到定义.但是不合格的名称查找并没有结束.为什么?标准中指定了哪里?一般来说,我对以下内容感兴趣:

何时为函数调用的postfix-expression结束非限定名称查找?

注意:我知道ADL是什么意思.在这种情况下,ADL生成的声明集是空的.

UPD:

但是如果我们写下以下内容:

int foo(int a) { return 0; }
namespace A
{
    int foo() { return 1; }
    int a= foo(5); //Error: to many arguments
}
Run Code Online (Sandbox Code Playgroud)

这意味着封闭命名空间不考虑.我想知道它在哪里指定.

c++ function language-lawyer

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

是什么破坏了java中的局部变量?

我怀疑方法局部变量仅在方法执行时才存在.此外,GC EdenLong-generation块溢出时触发(轻微/主要GC)等......所以,如果在方法体的末尾Eden没有溢出,那么就不需要触发GC.尽管没有触发主要/次要GC,我们将销毁所有局部变量.怎么做?

java garbage-collection

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

如何结束一天?

我正在使用PostgreSQL 8.4.我有一个表的列,my_tbl其中包含日期(timestamp without timezone).例如:

       date
-------------------
2014-05-27 12:03:20
2014-10-30 01:20:03
2013-10-19 16:34:34
2013-07-10 15:24:26
2013-06-24 18:15:06
2012-07-14 07:09:14
2012-05-13 04:46:18
2013-01-04 21:31:10
2013-03-26 10:17:02
Run Code Online (Sandbox Code Playgroud)

如何编写以下格式返回所有日期的SQL查询:

xxxx-xx-xx 23:59:59
Run Code Online (Sandbox Code Playgroud)

这个日期将设置为当天结束.

sql postgresql date-arithmetic

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

在内部类中使用非最终局部变量

JLS 8.1.3为我们提供了关于未在内部类中声明但在类中使用的变量的规则.

使用但未在内部类中声明的任何局部变量,形式参数或异常参数必须声明为final或者是有效的final(§4.12.4),否则在尝试使用时会发生编译时错误.

一个例子:

class A{
    void baz(){
        int i = 0;
        class Bar{ int j = i; }
    }

    public static void main(String[] args){
    }
}
Run Code Online (Sandbox Code Playgroud)

DEMO

为什么编译代码?我们在内部类中使用了非final的局部变量,该变量在那里没有声明.

java class

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

execinfo.h头文件不存在

我正在使用最新的cygwin 1.7.34(0.285/5/3)完整版.我遇到的问题是没有execinfo.h,所以编译器打印有关文件缺失的错误消息.我该如何解决这个问题?有人已经遇到过这个问题吗?

c linux cygwin

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

使用FactoryMethod模式

我有两个独立的实体:

public enum Rule implements Validatable, StringRepresentable{ 
     //...
}
Run Code Online (Sandbox Code Playgroud)

public inteface Filter extends Validatable, StringRepresentable{
    //...
}
Run Code Online (Sandbox Code Playgroud)

哪里

public inteface Validatable{
    public GenericValidator getValidator();
}
Run Code Online (Sandbox Code Playgroud)

public interface StringRepresentable{
    public String getStringRepresentation();
}
Run Code Online (Sandbox Code Playgroud)

GenericValidator是一个抽象类,有许多我不希望用户直接访问的子类.我该如何更好地处理这些事情?

我不明白何时创建类似的更好

public class ValidatorFactory{
    public Validator getRuleValidator(Rule r){ ... }
    public Validator getFilterValidator(Filter f){ ... }
}
Run Code Online (Sandbox Code Playgroud)

而不是Validatable如前所示实现接口.

难道没有人解释我怎样才能做出正确的决定?什么潜在的情况需要执行FactoryMethod一个错误的决定,什么时候真的很好?

UPD:

public interface Validator{
    public ErrorCode validate();
}

public abstract class GenericValidator implements Validator{
   //...
}
Run Code Online (Sandbox Code Playgroud)

ErrorCode类封装了验证的结果(null如果valiadtion的succsfully完成).

java factory

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

创建集合的副本

我正在阅读J. Bloch的有效Java,现在我正在关于避免返回nulls,但返回空集合的部分.这是该部分的代码示例:

// The right way to return a copy of a collection
public List<Cheese> getCheeseList() {
  if (cheesesInStock.isEmpty())
    return Collections.emptyList(); // Always returns same list
  else
    return new ArrayList<Cheese>(cheesesInStock);
}
Run Code Online (Sandbox Code Playgroud)

我真的无法理解只返回cheesesInStockif 有什么问题cheesesInStock.isEmpty().为什么返回预定义更好Collections.emptyList().如果我们返回,我们可能遇到什么样的麻烦cheesesInStock.

java collections copy list

4
推荐指数
3
解决办法
127
查看次数