问题描述
|
var Config = {
Windows: [\'apple\',\'mangi\',\'lemon\']
}
我有一个条件,基于此,我想在我的数组中推送香蕉值。
If(Condition Passed) {
Config.Windows.unshift(\'banana\');
Windows: [\'banana\',\'apple\',\'lemon\']
Config.Windows.reverse();
// The way the Array elements are Now reversed and First banana is accessed.
} else {
Config.Windows.reverse();
}
它没有做到...当我在其他功能中使用Config.Windows时,根本没有banana
值...
for each(var item in Config.Windows.reverse()) {
Ti.API.info(item);
//This does not print banana
解决方法
您可以通过多种方式将值推入数组的前面。立即,我可以想到两种方式:
创建一个新数组,并替换旧数组
if (condition) {
Config.Windows = [\'banana\'].join(Config.Windows)
Config.Windows.reverse();
} else {
Config.Windows.reverse();
}
根据您所说的,总是反转数组,然后增加值会更有意义:
//initial array: [\'apple\',\'mangi\',\'lemon\']
Config.Windows.reverse(); //[\'lemon\',\'apple\']
if (condition) {
//this will get the same result as your code
Config.Windows.push(\"banana\"); //[\'lemon\',\'apple\',\'banana\']
}
, \“ IE不支持取消移位,因此,如果这是您的浏览器,则说明无法运行的原因。”
http://msdn.microsoft.com/zh-CN/library/ie/ezk94dwt(v=vs.94).aspx