everycode icon indicating copy to clipboard operation
everycode copied to clipboard

2015年1月23日 D7 希望每日一题能继续,来发简单的。arguments类型转换。

Open qingo opened this issue 10 years ago • 15 comments

把arguments转化为array类型。 case:

function arguments2array(){
    // todo code body
}
arguments2array(1); //=> [1]
arguments2array(1, 4, 6); //=> [1, 4, 6]
arguments2array(1, {}); //=> [1, {}]

qingo avatar Jan 23 '15 03:01 qingo

Array.prototype.slice.call(arguments);

MeCKodo avatar Jan 23 '15 03:01 MeCKodo

//arguments.slice(); 汗

fireflyhoo avatar Jan 23 '15 03:01 fireflyhoo

[].slice.call(arguments);

flybbjcs70 avatar Jan 23 '15 03:01 flybbjcs70

function argments2array(){
    return [].slice.call(arguments);
}

每日一水

Bosn avatar Jan 23 '15 03:01 Bosn

火钳刘明

function argments2array(){
  Array.prototype.slice.call(arguments,0);
}

zhoufenfens avatar Jan 23 '15 03:01 zhoufenfens

return arguments

wxxcarl avatar Jan 23 '15 03:01 wxxcarl

function argments2array(){
  return Array.prototype.slice.call(arguments,0);
}

zhanglun avatar Jan 23 '15 03:01 zhanglun

function argments2array(){ return Array.prototype.slice.call(arguments); }

xuyuan923 avatar Jan 23 '15 03:01 xuyuan923

function test(){ 
  var args = Array.prototype.slice.apply(arguments);   alert(args);  }

llyuan520 avatar Jan 23 '15 03:01 llyuan520

function argments2array (){
     try{
         return Array.prototype.slice.call(arguments);
     } catch(e){
         var arr = [];
         for(var i = 0,len = arguments.length; i < len; i++){
             arr[i] = arguments[i];  
         }
    }
    return arr;
}

zjh-neverstop avatar Jan 23 '15 03:01 zjh-neverstop

return Array.prototype.slice.call(arguments);

lzbSun avatar Jan 27 '15 02:01 lzbSun

function arguments2array(){ return [].slice.call(arguments,0) }

ittce avatar Jan 27 '15 02:01 ittce

function argments2array(){ return arguments.valueOf(); }

helloaspnet avatar Jan 27 '15 02:01 helloaspnet

@HelloAspNet 好思路

zhoufenfens avatar Jan 27 '15 03:01 zhoufenfens

玩点小花样吧,ES5来帮忙

function argments2array(){
    return [].map.call(arguments,function(item){
        return item
    });
}

或者ES6(不过V8都还不支持from方法)

function argments2array(){
    return [].from(arguments)
}

VaJoy avatar Feb 27 '15 06:02 VaJoy