小编t3d*_*son的帖子

为什么变量定义的全局未定义?

嗨,大家好,我有一个简单的函数和一个全局变量.

为什么myname undefined不是字符串"global"

var myname = "global"; // global variable
function func() {
    alert(myname); // "undefined"
    var myname = "local";
    alert(myname); // "local"
}
func();
Run Code Online (Sandbox Code Playgroud)

是不是可以引用在该函数范围之外定义的外部变量?在这个全局变量......

我如何解决这个问题,以便undefined从全局变量中得到一个?

javascript global-variables local-variables hoisting

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

F#泛型/函数重载语法

我很困惑如何将函数标记为泛型而没有类似的显式类型声明 ('a -> 'a)

let add a b = a + b
Run Code Online (Sandbox Code Playgroud)

这给了我们

val add : a:int -> b:int -> int
Run Code Online (Sandbox Code Playgroud)

但是我们可以立即打电话

add "Hello " "World!"
Run Code Online (Sandbox Code Playgroud)

现在add的值是

val add : a:string -> b:string -> string
val it : string = "Hello World!"
Run Code Online (Sandbox Code Playgroud)

如果我们再打电话

add 2 3 // then we get
error: This expression was expected to have type string but here has type int
Run Code Online (Sandbox Code Playgroud)

如何确保函数适用于所有已(+)定义函数的类型

generics f# types function

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

如何在javascript中启用/禁用linkbutton?

我在页面上有一个链接按钮.

<asp:LinkButton ID="edit" runat="server" OnClick="edit_Click" Enabled="False">??????</asp:LinkButton>
Run Code Online (Sandbox Code Playgroud)

我想在javascript中启用/禁用此功能.

我使用此代码但设置可见

var objedit = document.getElementById('<%= edit.ClientID.ToString() %>');
objedit.style.display = "none";
Run Code Online (Sandbox Code Playgroud)

我使用此代码但未启用

if (count == 1) {
    objedit.disabled = false;
} else {
    objedit.disabled = true;
}
Run Code Online (Sandbox Code Playgroud)

我可以点击但链接按钮是禁用的.

在此输入图像描述

javascript asp.net

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

通过jquery查找特定的子div

我试图在动态创建的父div中找到并附加一些文本,但它不起作用.这是我尝试过的.

var mainDiv = "" +
"<div>" +
    "<div></div>" +
    "<div>" +
        "<div class='image-here'></div>" +
    "</div>" +
"</div>"; // proper script is in Fiddle

var imageDiv = $(mainDiv).children(".image-here");
$(imageDiv).html("text allocated");
$(mainDiv).dialog();
Run Code Online (Sandbox Code Playgroud)

这是小提琴:http://jsfiddle.net/xBB5x/10166/

html javascript jquery

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

如何在固定高度和固定宽度的div中包含fullscreen.js幻灯片

默认情况下,会写入fullpage.js的任何示例,以便在屏幕的最大高度和宽度(全屏幕)下渲染幻灯片.

但是,我试图在我的html页面中将幻灯片包含在一个固定大小的div中.我有一个固定高度和固定宽度的div,并希望fullpage.js幻灯片在该div内播放.我试过但是我无法将高度降低到规定的固定高度.固定宽度工作正常.

<div id="fullpage" style="height: 40px; max-height:200px; width: 500px;">
    <div class="section " id="section0">
        <div class="intro">
            <h1>Responsive</h1>
            <p>This example will turn to normal scroll when the window size gets smaller than 600px height</p>
        </div>
    </div>
    <div class="section" id="section1">
        <div class="slide" id="slide1">
            <div class="intro">
                <h1>Ideal for small screens</h1>
            </div>
        </div>
        <div class="slide" id="slide2">
            <h1>This example uses responsiveHeight: 600</h1>
        </div>
    </div>
    <div class="section" id="section2">
        <div class="intro">
            <h1>Keep it simple!</h1>
        </div>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

javascript css jquery fullpage.js

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

是否可以在F#中使用本地类型

本地类型是指只能在特定函数中访问的类型

例如,假设我想获取一些数据,格式化它,并将其序列化为json.

let parse data = // hypothetical scenario
    type Record = { root : string[] }
    let record = { root = data }
    JsonConvert.SerializeObject record
Run Code Online (Sandbox Code Playgroud)

似乎因为在其他任何地方都不需要这种类型.但是当我写这个时,我得到了编译错误.

有没有办法在F#中获得类似的功能?

f# types scope functional-programming

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

C#属性封装

C#属性是我在交流家庭语言中发现的最具表现力的工具之一.我的问题是为什么"支持"字段不能在属性块内?什么理由不被允许?

public int Salary //Compile error
{
    int salary = 1000;
    get {} //custom use of salary
    set {} 
}
Run Code Online (Sandbox Code Playgroud)

我发现做以下事情相当笨重

int salary = 1000; //poor encapsulation but working code

public int Salary
{
    get {} //edit the private field salary
    set {} 
}
Run Code Online (Sandbox Code Playgroud)

我通过使用以下模式记忆属性来完成一些代码的优化

int field;
bool flag = false;
public int Field 
{
    get
    {
        if (flag)
            return field;
        flag = true;
        return field = expensiveOperation();
    }
}
Run Code Online (Sandbox Code Playgroud)

我真的想将这些变量移动到属性的范围内,因为它们没有理由在实例的范围内

public int Field //compile error
{
    int field;
    bool …
Run Code Online (Sandbox Code Playgroud)

c# coding-style properties

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

记忆可能没有副作用

我有一些F#代码可以缓存结果以供将来查找.我的理解是你添加的词典和其他数据结构需要副作用.(即改变字典的状态)这是正确的吗?这被认为是不纯的还是仍然在无副作用计算的模型中.

let rec fib =
    let dict = new System.Collections.Generic.Dictionary<_,_>()
    fun n ->
        match dict.TryGetValue(n) with
        | true, v -> v
        | false, _ -> 
            let fibN =
                match n with
                | 0 | 1 -> n
                | _ -> fib (n - 1) + fib(n - 2)
            dict.Add(n, fibN)
            fibN
Run Code Online (Sandbox Code Playgroud)

f# functional-programming side-effects memoization

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

Angular,在运行时编译和创建组件

我正在努力制作一个角度的文档生成工具,我正在挑战我如何允许用户动态创建内容.

我想要创建的组件可能有任意模型和行为,所以我认为我不能使用共享组件.

我正在描述的组件在编译时不存在.

我看到一些用于渲染动态组件的文档.然而它提到,你必须在列出的"动态"部分entryComponentsngModule.这对我的方案不起作用.

是否有另一种机制来实现这种效果?

dynamic compile-time angular

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

Java Swing JFrame为游戏推出了另一个JFrame

我正在使用Java开发一个小游戏.我的应用程序有一个主JFrame,可以通过单击JButton创建另一个Window(游戏窗口).我已经单独测试了我的游戏窗口,一切都很好.

这是我的游戏窗口构造函数:

public GameWindow(final GameController controller)
{
    super("Boulder Dash Game");

    this.controller = controller;
    this.controller.registerObserver(getCurrentFrame()); 
    this.gamePanel = new GamePanel(controller);

    this.frameWidth = controller.getColumns() * 16;
    this.frameHeight = controller.getRows() * 16 + 76;

    getContentPane().add(gamePanel, BorderLayout.CENTER);

    setSize(frameWidth, frameHeight);
    setResizable(false);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setVisible(true);
    controller.startGame();
}
Run Code Online (Sandbox Code Playgroud)

controller.startGame()方法启动游戏循环.当我直接从我的主要开始这个窗口时,游戏循环工作正常.

现在,我想从我的主框架启动这个GameWindow框架.这是我的主框架中的代码:

playButton.addActionListener(new ActionListener() {
    @Override
    public void actionPerformed(final @Nullable ActionEvent e)
    {
        String selectedItem = (String) levelsComboBox.getSelectedItem();
        assert selectedItem != null;
        controller.lauchGame(selectedItem);
    }
});
Run Code Online (Sandbox Code Playgroud)

controller.launchGame(String selectedItem)是一种用于加载游戏关卡并启动游戏窗口的方法.这是代码

public void lauchGame(final String levelQueried)
{
    assert levelQueried != null;
    Level level = LevelRepository.load(levelQueried); …
Run Code Online (Sandbox Code Playgroud)

java swing event-dispatch-thread

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