javascript - 将数组值推送到第一个索引

标签 javascript

var Config = {
   Windows: ['apple','mangi','lemon']
}

我有一个条件,基于此我想将香蕉值推送到我的数组中。

If(Condition Passed) {
      Config.Windows.unshift('banana');
      Windows: ['banana','apple','mangi','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','mangi','apple']
    if (condition) {
        //this will get the same result as your code
        Config.Windows.push("banana"); //['lemon','mangi','apple', 'banana']
    }
    

关于javascript - 将数组值推送到第一个索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6358130/

相关文章:

Javascript - 生成随机深色

javascript - 刷新页面后保留搜索值

javascript - 表单输入状态颜色不变

javascript - Greasemonkey 脚本和函数作用域

javascript - 具有文件系统访问权限的本地 HTML + JS 应用程序

javascript - 动态排列 md-dialog 标签

javascript - 使用 JSDoc 记录原型(prototype)扩展函数

javascript - 为什么 Selenium 不使用 JS?

javascript - 循环填充表格

javascript - 仅在 React 中使用 'useMemo' 时才显示数组中的匹配字符串