javascript - 做数组练习的问题。初学者里面
问题描述
我正在学习 Javascript,我的数组有问题Javascript
,我必须做一个class
名为TV Show的标题、主题和演员(带有数组的演员)然后,我必须做一个函数来抓取特定的演员并分类它随机作为“最喜欢的”。
完成后,我得到一个“空”数组。
这是我的代码。
class TVShow {
constructor (title, thematic, principalActors){
var arrayActors = new Array();
this.title=title;
this.thematic=thematic;
principalActors=[];
this.generateFavActor = function(){
var long = principalActors.lenght;
let calc = Math.floor(Math.random()*(long));
arrayActors = principalActors[calc];
}
console.log(arrayActors);
}
}
var show01= new TVShow("The Revolution", "Accion",["Hello","Hello2"]);
show01.generateFavActor();
var show02 = new TVShow("Peaky Blinders", "Drama",["Hello","Hello2", "Hello3"] );
show02.generateFavActor();
var show03 = new TVShow ("Stranger Things", "Accion", ["Hello","Hello2", "Hello3", "Hello4"]);
show03.generateFavActor();
谢谢!!
解决方案
那 ?(使用解构赋值)
class TVShow
{
constructor (title, thematic, principalActors)
{
this.title = title
this.thematic = thematic
this.actors = [...principalActors]
}
generateFavActor()
{
console.log( this.actors[ Math.floor(Math.random()*this.actors.length ) ])
}
}
var show01 = new TVShow('The Revolution', 'Accion', ['Hello','Hello2'])
, show02 = new TVShow('Peaky Blinders', 'Drama', ['Hello','Hello2', 'Hello3'] )
, show03 = new TVShow('Stranger Things', 'Accion', ['Hello','Hello2', 'Hello3', 'Hello4'])
;
show01.generateFavActor()
show02.generateFavActor()
show03.generateFavActor()
推荐阅读
- sql-server - 将像✅这样的unicode从表单存储到数据库
- javascript - 在 Bootstrap 加载时使用 HMTLWebPackPlugin 测试基于 WebPack 的 WebApp
- machine-learning - 如何处理电影推荐中的发行年份差异
- swift - Swift - 如何为特定节点添加场景边界?
- spring-cloud - Spring Cloud Config 创建什么样的消息队列?
- firebase - Flutter中Firebase一对一聊天的数据结构
- java - 尝试为 mapsforge/vtm 创建 Xamarin Android 绑定 Java 库时出错
- entity-framework - 升级到 Entity Framework Core 3 时出错:当前上下文中不存在 RelationalReferenceCollectionBuilderExtensions
- python - 在 codejam 2019 中提交代码时出现运行时错误
- php - 有没有办法用 php 清理 Ubuntu Server 内存使用?