js全局变量赋值问题
var slideimages=new Array();
function getPhotos(){
	JPhoto.getPhoto(callBackImages);
}
function callBackImages(images){
	for(var i=0;i<images.length;i++){
		slideimages[i]="images/photo/"+images[i].photoSrc;
     	alert(slideimages[i]);   //函数里有值
	}
}
alert(slideimages[0]);   //函数外面就没值了
怎么解决让全局数组一直有值
------解决方案--------------------<script type="text/javascript">
var list = new Array();
  function test(){
	alert("03");
	list.push("111");
	alert("04");
	list.push("222");
  }
  function test222(){
      alert("01");
      test();
      alert("02");
      alert(list[0]);
      alert(list[1]);
  }
</script>
在JS中List使用还是比较麻烦的, 别用 list[i]=="**"赋值,用函数push();上面test()给全局list赋值,这样在其他地方就可以获取,当然取之前需要调一下test()...基本思路就是这样,另外你上面的第二个alert(slideimages[0]); //函数外面就没值了  这个地方应该写在function 中,要不怎么调?
给你个网址,里面讲JS操作List听详细的:
http://www.cnblogs.com/qiantuwuliang/archive/2011/01/08/1930499.html
我也是菜鸟,一起努力!!!!
------解决方案--------------------那是因为你是在函数callBackImages里面对数组进行赋值操作的,而外面的alert执行时,callBackImages并未被调用,此时当然取不到任何值了。
给你小改了下,只是为了说明下问题,无任何实用性
JScript code
        <div id="imageContainer">
            <img src="0.jpg" alt="image" />
            <img src="1.jpg" alt="image" />
            <img src="2.jpg" alt="image" />
        </div>
        <script>
            var slideimages=new Array(),
                images = document.getElementsByTagName("img");
            function callBackImages(images){
                for(var i=0;i<images.length;i++){
                slideimages[i]="images/photo/"+images[i].src;
                  alert(slideimages[i]); //函数里有值
                }
            }
            callBackImages(images);
            alert(slideimages[0]); //函数外面就没值了
        </script>