2017-02-09 126 views
-2

新的js,代码如下。在这里,我无法打印正确的结果。我认为+ "names[i]"这部分代码有问题。For循环与阵列不打印正确的结果

var names = ["aha","mk", "jk","hk","fhf"]; 
for (i=1;i<=names.length;i++){ 
    console.log("I know someone called "+ "names[i]"); 
    } 
+1

请勿使用'names [i]'的引号。做这个'console.log(“我知道有人叫”+ names [i]);' –

+0

引号只用于字符串,数组不需要它们 –

回答

0

省略名称[i]周围的引号。 它应该是:所有的

var names = ["aha","mk", "jk","hk","fhf"]; 
for (i=1;i<=names.length;i++){ 
    console.log("I know someone called "+ names[i]); 
} 
+0

感谢#aranya帮助其修正 –

0
var names = ["aha","mk", "jk","hk","fhf"]; 
for (i=1;i<=names.length;i++){ 
    console.log("I know someone called "+ names[i]); 
    } 

名[i]是一个字符串了。

-1
  • FIRST:正如大家一直说,你不要放置names[i]双引号内,因为它是一个定义的变量的引用。

  • 第二:在您的for循环的** ** 声明i<=names.length,但它应该是i<names.length。你的方式会一路走到6,这太高了。

  • 第三:除了第二个错误,你也必须改变names[i]names[i--],因为i<names.length仍然会达到5和1过高了一些,开始用的。
1

不加引号使用names[i]它是一个expression提供你的价值观

,您可以利用的es6模板串

var names = ["aha","mk", "jk","hk","fhf"]; 
    for (i=0;i<=names.length-1;i++){ 
     console.log(`I know someone called ${names[i]}`); 
    } 
0

请检查名称[I]不应该保持双引号,并将i值更改为0

var names = ["aha","mk", "jk","hk","fhf"]; 
for (i=0;i<=names.length;i++) 
{ 
     console.log("I know someone called "+ names[i]); 
} 
-1

我认为这是工作正确 您需要删除=符号并设置i = 0

var names = ["aha","mk", "jk","hk","fhf"]; 
     for (i=0;i<names.length;i++){ 
     console.log("I know someone called "+ names[i]); 
    }