【问题标题】:String to variables - javascript字符串到变量 - javascript
【发布时间】:2018-03-06 07:32:19
【问题描述】:

我正在对机器人发出警告命令 (Discord Api) 我学会了如何拆分字符串。所以,例子是

var str = "warn @user reason";
var res = str.split(" ", 3);

它的输出将是

警告,@用户,原因

它的输出将是“warn,@user,reason” 我想让回复出现在变量中,例如

var commandname = "warn" ;
var username = "@user"; 
var reason = "reason"; 

因为我想将它们存储在一个文件中! 如何删除回复的“,”并将回复作为变量?

【问题讨论】:

标签: javascript discord


【解决方案1】:

在您的示例中,res 将是一个字符串对象数组。所以你可以通过索引访问:

var commandname = res[0];
var username = res[1]; 
var reason = res[2]; 

【讨论】:

  • 我们真的应该回答这些基本问题吗?
  • 是的。只要问题满足所有要求(努力、清晰等),那么您或其他任何人认为它有多“简单”都没有关系。唯一没想到的,可能已经是复制品了……
  • 我同意musefan,简单是相对的
【解决方案2】:

您可以简化 var 声明,例如,以获取有关 Destructuring assignment 的更多详细信息

var str = "warn @user reason";
var res = str.split(" ", 3);
var [commandname,username,reason ] = res;
console.log(commandname);
console.log(username);
console.log(reason);

注意:取决于ES版本,IE不支持

【讨论】:

  • 取决于 ES 版本
  • 从来不知道,这很好学...虽然我怀疑我会很快使用它。对于兼容性的风险,似乎并不能节省太多时间
  • 除非指定,否则我们应该把 ES5 放在它所属的地方,(在 bin 中).. 如果 OP 明确要求 ES5,就足够公平了。但是来吧..!!作为默认的 javascript 问题,ES6 应该是规范。
  • @musefan 它叫destructuring
  • 是的,在答案和注释中添加了解构分配的链接
猜你喜欢
  • 1970-01-01
  • 2014-03-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-12
  • 2017-10-11
  • 1970-01-01
相关资源
最近更新 更多