将字符添加到形成单词的数组的开始

时间:2016-05-04 04:09:17

标签: javascript arrays

在查看字符集时,我试图将每个字母放入数组中的特定顺序。例如:给定字符串“cat”和“dog”我想要一个包含[d,o,g,c,a,t]的数组,cat在数组的末尾,因为它是先读取的。

目前我试过这个:

但是,当我尝试下面的代码时,假设字符串是“cat”和“dog”。  我得到一个包含[c,a,t,d,o,g]的数组。我没有尝试.unshift,而是现在读取:[g,o,d,t,a,c]

  var chars = /^[a-z]$/;
  var string = [];
  function makeword(){
    if(currentChar.match(chars)){
    string.push(currentChar);
    currentChar = getNextChar(); //Gets next Character in the String
    makeword();
    }
  }

Javascript中是否可以这样?

2 个答案:

答案 0 :(得分:0)

如果我理解正确,你想提供一个字符串列表,然后让它们以相反的顺序显示在一个数组中,每个字母作为数组的元素。以下函数将执行此操作:

function makeWords() {
  var arr = [];

  for(var i = arguments.length - 1; i >=0; i--) {
    arr.push(arguments[i]);
  }

  return arr.join('').split('');
}

所以正在运行makeWords('cat', 'dog')会产生['d','o','g','c','a','t']

答案 1 :(得分:0)

使用功能方法时,这是一个相对简单的代码。其余和扩展运算符非常方便收集函数参数和将单词的字符分散到数组中。

>>> arr1 = ['er','t','ty']
>>> arr1.append(3)
>>> print(arr1)
['er', 't', 'ty', 3]
>>> for object in arr1:
...    print(object, type(object))
...
er <class 'str'>
t <class 'str'>
ty <class 'str'>
3 <class 'int'>