所以指示非常简单,但我发现自己陷入困境。
我必须创建一个函数声明,该声明接受一个数组并返回每个元素数据类型为新的数组。这就是我正在尝试的:
let arr = ["1",2,false,true];
let newArr = [];
function dataTypes (arr){
for(i= 0; i < arr.length; i+=1 ){
let y = typeOf(i)
newArr.push(y);
}
return newArr;
}
dataTypes (arr);
答案 0 :(得分:2)
您的意思是:
b
纯JavaScript的长版本:
let arr = ["1",2,false,true];
let res = arr.map(i => typeof(i));
尽管由于您使用的是var res = arr.map(function(i) { return typeof(i) });
,所以ES6版本应该更好。
您最初的错误似乎是在使用let
而不是typeOf
的情况下,您应该会遇到错误。请记住,JavaScript区分大小写。
答案 1 :(得分:-1)
tadman有一个很好的答案。
但是,如果要运行代码版本,就在这里。
let arr = ["1", 2, false, true];
let newArr = [];
function dataTypes(arr) {
for (i = 0; i < arr.length; i += 1) {
let y = typeof (arr[i])
newArr = [...newArr, y]
}
return newArr;
}
dataTypes(arr);
console.log(newArr);