小编zim*_*atm的帖子

查找项目是否在JavaScript数组中的最佳方法?

查找对象是否在数组中的最佳方法是什么?

这是我所知道的最佳方式:

function include(arr, obj) {
    for(var i=0; i<arr.length; i++) {
        if (arr[i] == obj) return true;
    }
}

include([1,2,3,4], 3); // true
include([1,2,3,4], 6); // undefined
Run Code Online (Sandbox Code Playgroud)

javascript arrays

766
推荐指数
8
解决办法
99万
查看次数

你如何调试Java Applets?

目前,我所拥有的唯一信息是浏览器状态栏中的单行错误消息.

你知道如何获得堆栈跟踪吗?

java debugging applet

56
推荐指数
2
解决办法
8万
查看次数

Smalltalk如何处理monkeypatching?

我是一个Ruby编码器.对我来说,monkeypatching是在运行时更改外部项目中的类或模块方法.我感兴趣的是,你有什么机制可以保护你免受那些好的功能的滥用.接下来,我遇到的一些场景,monkeypatching已经咬了我.

虽然我根本不了解Smalltalk,但这种语言早在Ruby之前就存在了.我做了一些研究,看看Smalltalk是否以及如何解决其中的一些问题,但在谷歌上找不到多少.所以我在这里,要求Smalltalkers他们是否可以分享他们的智慧.

场景A:错误修复冲突

项目A和项目B依赖于项目C.项目C有一个错误.项目A和B版本包含项目C的修复.

如果您的代码使用项目A和B,您怎么知道补丁不会冲突?

场景B:过时的bug修复

Project C发布了项目的固定次要版本.

如果您加载项目A,是否仍会应用补丁,可能会出现破损?我很想知道是否存在某种机制,例如,如果代码是固定的,则不加载补丁.

场景C:冲突的扩展

项目A和B使用项目C的类Foo.两者都为Foo添加了一个实用工具方法,比如#toDate.toDate版本的A返回一个日期字符串,而一个B是Date对象.

如果你加载两个项目(使用C dep),是否有一个机制可以警告/防止冲突?或者您是否必须等到运行时因为方法中的错误期望而引发错误?

关于问题更新

阅读答案,我意识到我的问题过于宽泛和模糊.所以这是它的重写版本.

ruby smalltalk monkeypatching

6
推荐指数
2
解决办法
523
查看次数

标签 统计

applet ×1

arrays ×1

debugging ×1

java ×1

javascript ×1

monkeypatching ×1

ruby ×1

smalltalk ×1