Как исключить определенные ключи из Array.push () - PullRequest
1 голос
/ 25 октября 2019

У меня проблемы с исключением элементов из Array.push(), у меня есть кое-что, что кажется работающим, но из-за соображений производительности беспокоюсь, что это может быть не лучшим способом сделать это:

this.iframe_settings = (localStorage.getItem('iframe_settings') != null) ? JSON.parse(localStorage.getItem('iframe_settings')) : null


var _i = this,
    iframeSource = []

const isAffIdSet = (_i.iframe_settings && _i.iframe_settings['cpm_id'] != '' && _i.iframe_settings['cpm_id'] != null) ? true : false
const isSubIdSet = (_i.iframe_settings && _i.iframe_settings['sub_id'] != '' && _i.iframe_settings['sub_id'] != null) ? true : false

Object.keys(this.iframe_settings).forEach(function(key) {
  if (key != 'target') {

    if (key == 'sub_id') {
      if (isAffIdSet && !isSubIdSet) {
        _i.iframe_settings['cpm_id'] = _i.iframe_settings['cpm_id']
      } else if (isAffIdSet && isSubIdSet) {
        _i.iframe_settings['cpm_id'] = `${_i.iframe_settings['cpm_id']}|flex_repay,${_i.iframe_settings['sub_id']}`
      } else if (isAffIdSet && !isSubIdSet) {
        _i.iframe_settings['cpm_id'] = _i.iframe_settings['cpm_id']
      } else {
        _i.iframe_settings['cpm_id'] = 'flex_repay'
      }
    }

    iframeSource.push(`&${key}=${_i.iframe_settings[key]}`);
  }
});

Мой код сохраняет объект в iframe_settings, что по умолчанию равно null. Я бы исключил &target=X из списка найденных ключей?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...