javascript数组问题

1. <script   language="javascript"> 
var s = [[]];
 s.push("dddd");
        alert(s[0]);
 alert(s[1]);
 var a = [];
 a[0] = "1111";
 a[1] = "2222";
 s.push(a);
        alert(s[1]);
        alert(s[2]);
</script>

解析:

[[]]是一个一维数组,不过数组值也是数组

不过数组的第一个位置是一个空数组
相当于这样子
var s = [[]];
 s[0][0]="1111";
 s[0][1]="2222";
 alert(s[0][0]);
与下面等效

var s = new array();
s[0][0]="1111";
s[0][1]="2222";
alert(s[0][0]);

2.求N(N>0)个元素的子集

<script   language="javascript">  
  var   elements   =   ["a","b","c","d"];  
   
  function   buildSet(set,   elements)  
  {  
      if   (elements.length   ==   0)  
  return;  
   
      var   n   =   set.length;  
      var   newele   =   elements.shift();  
   
      for   (var   i=0;   i   <   n;   i++)  
      {  
  var   subset   =   new   Array();  
   
  for   (var   j=0;   j   <   set[i].length;   j++)  
  subset.push(set[i][j]);  
   
  subset.push(newele);  
   
  set.push(subset);  
      }  
   
      buildSet(set,   elements);  
  }  
   
  var   set   =   [[]];  
   
   
  buildSet(set,elements);  
   
   
  for   (var   i=0;   i   <   set.length;   i++)  
  {  
    var   s   =   "{";  
    for   (var   j=0;   j   <   set[i].length;   j++)  
      {  
      if   (j   !=   0)  
  s   +=   ",";  
   
  s   +=   set[i][j];  
      }  
    s   +=   "}";  
    document.write(s   +   "<BR>");  
  }  
  </script>  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值