【问题标题】:How to use split method in Javascript object [duplicate]如何在Javascript对象中使用split方法[重复]
【发布时间】:2018-04-12 11:35:48
【问题描述】:

我有这个代码

    var array, key, dc;
    $.post("/mailchimp/check_mailchimp_key",
    {
      store_id: document.getElementsByName('data[store_id]')[0].value,
      mailchimp_api_key: document.getElementsByName('data[mailchimp_api_key]')[0].value,
      array: mailchimp_api_key.split('-'),
      key: array[0],
      dc: array[1]
    }

store_idmailchimp_api_key 工作,但我与其他人有问题。这样它会显示mailchimp_api_key is not defined,而我的目标是获取存储在mailchimp_api_key 中的任何内容并将其划分为keydc

【问题讨论】:

  • mailchimp_api_key 未定义 ...如果未定义,则其中没有存储任何内容。
  • 但确实如此。由于 mailchimp_api_key 本身具有输入的任何内容

标签: javascript object split


【解决方案1】:
mailchimp_api_key: document.getElementsByName('data[mailchimp_api_key]')[0].value

... 表示当对象完成构建后,它将拥有一个名为mailchimp_api_key 的属性,该属性具有该值。

mailchimp_api_key.split('-'),

…尝试读取一个名为mailchimp_api_key变量

这样做有两个问题:

  • 变量不是对象属性
  • 对象属性尚不存在

在构造对象之前将值复制到变量中。

使用两次。

var array, key, dc;

var mailchimp_api_key = document.getElementsByName('data[mailchimp_api_key]')[0].value;

$.post("/mailchimp/check_mailchimp_key",
{
  store_id: document.getElementsByName('data[store_id]')[0].value,
  mailchimp_api_key: mailchimp_api_key,
  array: mailchimp_api_key.split('-'),
  key: array[0],
  dc: array[1]
}

【讨论】:

  • 我不知道你不能在 ajax 调用中立即使用它。谢谢
  • 这与 Ajax 调用无关。这只是对象字面量如何工作的基础知识。
  • 我的意思是*对象
【解决方案2】:

这根本不是 Javascript!您不能引用刚刚定义的对象键。

var mailchimp_api_key  = document.getElementsByName('data[mailchimp_api_key]')[0].value;
var array = mailchimp_api_key.split('-');
var key = array[0];
var dc = array[1];

这样您可以获得所有需要的变量,然后您可能希望在 Ajax 调用中传递它们。

【讨论】:

    猜你喜欢
    • 2021-12-14
    • 1970-01-01
    • 2023-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-05
    • 1970-01-01
    相关资源
    最近更新 更多