测试在Javascript中创建对象

时间:2016-12-09 17:56:01

标签: javascript

我正在做作业,我需要创建一个类,以便代码按预期运行。

// This is the test input
movie = new Movie("Star Wars"); 

// Expected Output     
[Movie "Star Wars"]  // Expected output

我的问题是如何实现?

据我了解,他们要我在ES5上写一堂课。这是我到目前为止的代码

var Movie = function Movie(title) {
  this.title = title;
  this.header =  this.title = (title) ? "[Movie \"" + title + "\"]": "[Movie]";
  this.show = function(){
     console.log('Your movie is on theaters');
   }

}


movie = new Movie("Lord Of The Rings"); //  [object Object]  

我在这里遗漏了什么吗?

更新1:这是解决它的代码,正如@loïc-faure-lacroix建议的那样。

var Movie = function Movie(title) {
this.title = title;
this.header =  this.title = (title) ? "[Movie \"" + title + "\"]": " [Movie]";
this.show = function(){
   console.log('Your movie is on theaters');
 }

}


 movie = new Movie("Lord Of The Rings"); //  [Movie "Lord of The Rings"] 
 movie = new Movie(); //  [Movie] 

1 个答案:

答案 0 :(得分:2)

您正在寻找的是将对象转换为字符串的方法。除非您将对象添加到html元素,否则您要查找的是定义private HttpMethod CreateHttpMethod(string method) { switch (method.ToUpper()) { case "POST": return HttpMethod.Post; case "GET": return HttpMethod.Get; default: throw new NotImplementedException(); } } public async Task<HttpResponseMessage> DoRequest(string url, HttpContent content, string method) { var request = new HttpRequestMessage(CreateHttpMethod(method), url) { Content = content }; return await client.SendAsync(request); } 方法。

switch

它会在某个interpereter中显示控制台中的对象,但目前尚不清楚它是否受所有控制台的支持。

从技术上讲,它不会起作用,因为像firefox这样的游戏机会使用一个对象的精美链接。但是如果你想将它连接到一个字符串,那么它将调用toString并将对象转换为字符串。但据我所知,没有转换为字符串的原始对象的输出是未定义的。

注意:

执行以下操作是没用的,因为您已经定义了名为Movie的函数:

toString