我想创建一个哈希表,将我的对象作为他的密钥,而不将其转换为String.
有点像这样:
var object1 = new Object();
var object2 = new Object();
var myHash = new HashTable();
myHash.put(object1, "value1");
myHash.put(object2, "value2");
alert(myHash.get(object1), myHash.get(object2)); // I wish that it will print value1 value2
Run Code Online (Sandbox Code Playgroud)
编辑:请参阅我的答案以获得完整的解决方案
我正在使用Angular 4,Webpack 2.4.1,Karma 1.6和Jasmine 2.6.1,并且正在编写ES2015 而不是 TypeScript
我有一个微型的角度演示应用程序,我想添加单元测试。演示应用程序本身正在运行,Webpack正确捆绑了所有内容,但是当我尝试运行单元测试时,我在控制台中看到一些错误,如下所示:
ReferenceError:找不到变量:地图
在Static / js / app.welcome.js:2569
(app.welcome.js是我的组件的名称)
Webpack似乎在正确构建我的测试包,Karma服务器正确启动,PhantomJS正确启动,但是随后我看到了一些Map错误。
我绝对不在Map()自己的代码中使用构造函数。
这是我的文件-
app.welcome.js:
import {Component} from '@angular/core';
class WelcomeComponent {
constructor () {
this.welcomeMessage = 'Welcome to Angular 4';
}
}
WelcomeComponent.annotations = [
new Component({
selector: 'my-app',
template: '<h1>{{welcomeMessage}}</h1>'
})
];
export {WelcomeComponent};
Run Code Online (Sandbox Code Playgroud)
app.welcome.spec.js:
import {TestBed} from '@angular/core/testing';
import {WelcomeComponent} from '../../js/app.welcome';
describe('The Welcome component', function () {
let component;
beforeEach(function() {
TestBed.configureTestingModule({
declarations: [WelcomeComponent] …Run Code Online (Sandbox Code Playgroud)