在javascript中转换类型

时间:2014-10-31 04:23:06

标签: javascript type-conversion

我需要编写一个返回输入参数中最后一个元素的函数。对于字符串和数组来说这很容易,但是该函数也可以接受参数列表"。我试图用String和Array语法处理这个参数列表,但是我得到的对象没有方法x的错误。这就是我到目前为止所做的:

function last(list){
  // return last element of array
  if(list instanceof Array){
    return list[list.length-1];
  }
  // return last element of string
  else if(typeof list === 'string'){
    return list.substring(list.length-1, list.length);
  }
}

有没有办法将任意参数列表转换为String或Array?以下是我所说的参数列表的一个例子。

Test.assertEquals(last(1,"b",3,"d",5), 5);

2 个答案:

答案 0 :(得分:2)

查看"参数"宾语。像

这样的东西
function last(list) {
    if (arguments.length > 1) {
        return arguments[arguments.length-1];
    }
    else {
       ... (as now)
 }

答案 1 :(得分:1)

你可以在函数内部调用参数[arguments.length -1],它应该给你最后一个参数,无论类型如何。

以下是参数资源:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/arguments