1 <script type="text/javascript"> 2 var six = new Array(); 3 six[0] = "d","ad"; 4 six[1] = "ds"; 5 var arr = ["s","s","s","s","f"] 6 7 var six2 = new Array(); 8 six2[0] = ["s", "dd"]; 9 six2[1] = ["dd", "sdd"]; 10 for (index in six) { 11 alert(six[index]); 12 13 } 14 </script> 15 16 <!-- 我就是想问 17 (1)数组中的中括号[]和小括号没什么关系吗? 18 就是数组可以随便用什么括号,还可以不打括号? 就像我写的six数组? 19 20 (2)在我写的上面三个数组中 他们三个有什么区别不? 21 22 (3)six中的six[0]后面有两个值 我把他aleat出来只能看见第一个 23 而six2中 后面都可以看出来 ,这是怎么回事啊? 24 -->
问的问题都在注释中 现在我很迷
谢谢 谢谢 谢谢
别鄙视我 耐心的教我啊!!!
大佬/扯一扯
问题1
生成数组有两种方式
第一种:
var arr = ["s","s","s","s","f"];
变通一下还可以这样
var arr=[];//生成一个空数组
arr.push("s");//向空数组中添加一个元素
第二种
var arr=new Array();
arr[0]="s";
arr[1]="s";
arr[2]="s";
arr[3]="s";
arr[4]="f";
问题2
var six2 = new Array();
six2[0] = ["s", "dd"];
six2[1] = ["dd", "sdd"];
相当于
var six2=[["s","dd"],["dd","sdd"]]
数组里面的元素是数组
这样的叫二维数组
问题3
这个就不用多解释了
six[0] = "d","ad";//没有这么赋值的
(1)上面写的三个代码 就是括号不一样 其他东西都一样吗?
列:数组没括号 ,数组小括号 ==中括号?(我看你是这样子的)
(2 )就是我上面写的数组 都合法不
@学C#要暴走:
var arr=new Array();这个小括号是构造函数的括号,不能和中括号画等号,具体你可以
找一下资料看看JavaScript对象创建方法
三个代码中
第一第二个是一维数组,分别是用方法1和方法2生成的,没有区别
第三个是一个二维数组,跟一、二不一样
不合法的地方我上面已经写了
@海之殇:
就这样子写数组没区别吧?
var six=new arrey("4","3","3","3");
等效于
var six=new array();
six[0]=('d');
six[1]=('sd');
等效于
var six=new array();
six[0]="d";six[1]="sd";
等效于
var six=new array();
six[0]=["d"];
six[1]=["sd"];
这几种写法没区别吧?(都是一维数组!)
@学C#要暴走:
最后一个不是一维数组
是二维数组
@学C#要暴走:
["d"]这个就是一个数组,只不过数组只有一个元素
six[0]=["d"];这个的意思就是数组的第一个元素是一个数组["d"]
@海之殇: 现在有点懂了 就是说["e"]这样子 就是一个数组了 如果你在里面加值["dd","dd"]这样子就是二维数组了
然后 这样子:("d","d") 是一个数组 不管里面有多少个元素都是一维数组
但是吧()换位[] 他就是二维数组了
@学C#要暴走:
不是(捂脸)
["a"] 一维数组
["a","b","c"]一维数组
[["a"],["b"]] 二维数组
[["a","b"],["c","d"]]二维数组
然后
var six=new array();
six[0]=["d"];
six[1]=["sd"];
等价于[["d"],["sd"]]
是二维数组
var six=new array();
six[0]="d";
six[1]="sd";
等价与["d","sd"]
是一维数组
小括号("d")等价与"d",小括号与数组并没有关联,我是没看到过有这么用小括号的
看到你一直说小括号,强调一下
数组定义并不是用小括号来定义
只有两种方式定义数组
var six=new array();
var arr=[];
@海之殇: 你最后从然后这里 我可以这样理解吗?
six[0]=["d"];
six[1]=["d"];
等价于[[q],["q"] ]<!--最外面这个括号是系统加的-->
而six[0]="d"等价于('d')(等价吗?)
six[1]="s"等价于(‘s’ )
等价于["d","s"]等价于[("d"),("s")]
然后这样子看就是一维数组?
@学C#要暴走:
差不多这样子
还有不要再纠结小括号了,没人会在数组中用小括号的。
你写正规点也能好理解一下,你这样一直纠结小括号容易理解错的
再强调一次
数组里不用小括号
var six=new array();
这里的小括号是构造方法的,方法调用都要用小括号
@海之殇: 啊 我现在经常看见小同学加小括号哎 然后他们又不告诉我原因
那我是不是以后都不加小括号了?
@学C#要暴走:
不用加,不用加,不用加,重要的是说三遍
@海之殇:
//创建数组分装类
var leis = new Array(); //图片_______价格__销量___描述
leis[0] = new lei("images/food1.jpg", 123, 5455, 'miaoshi');
leis[1] = new lei("images/food2.jpg", 323,4654, 'miaoshi');
leis[2] = new lei("images/food3.jpg", 434, 233, 'miaoshi');
leis[3] = new lei("images/food4.jpg", 544, 263233, 'miaoshi');
leis[4] = new lei("images/food5.jpg", 655, 26464, 'miaoshi');
leis[5] = new lei("images/food6.jpg", 432, 2138, 'miaoshi');
leis[6] = new lei("images/food7.jpg", 124, 9877, 'miaoshi');
leis[7] = new lei("images/food8.jpg", 234, 3260, 'miaoshi');
哥 这是干嘛的
@学C#要暴走:
new lei("images/food8.jpg", 234, 3260, 'miaoshi');//创建一个lei对象
创建一个数组
给数组添加八个lei对象元素
到此为止吧,你不会的太多了,没办法从头到尾跟你讲
@海之殇: 哥 抱歉了
@学C#要暴走: 不用道歉,你需要的是系统的学习,不是我们回答几个问题就能让你懂的,希望你不要失去学习兴趣
@海之殇: 基础不牢的原因的 学it 我问题好多(我都服我自己!)
应该先学习下JavaScript语法。
现在就是在学 所以才有这么多问题。。 烦死了
@学C#要暴走:
var six = new Array(); // 定义一个空数组 six[0] = "d","ad"; // 给数组的第一个元素赋值为 'd',后面的'ad'没什么用 six[1] = "ds"; // 给数组的第二个元素(下标从0开始)赋值为 'ds' var arr = ["s","s","s","s","f"] // 指定定义一个数组并赋值。 var six2 = new Array(); // 定义一个空数组 six2[0] = ["s", "dd"]; // 给数组的第一个元素赋值为一个新数组,整个也就形成了二维数组 six2[1] = ["dd", "sdd"]; // 给数组的第二个元素赋值 for (index in six) { // for...in 表示遍历对象(PS:数组不应该这样遍历) alert(six[index]); // 弹出对象的指定属性值 }
@幻天芒: 对啊 我一直就是这样子写的 我就是搞不懂 要不要加小括号 小括号 给来干嘛的