Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/420.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 拆分函数是什么样子的?_Javascript_Split - Fatal编程技术网

Javascript 拆分函数是什么样子的?

Javascript 拆分函数是什么样子的?,javascript,split,Javascript,Split,我看到了这样一句话: userName = document.cookie.split("=")[1]; 在阅读了关于split语句之后。也就是说split的语法是 string.split(分隔符、限制)。那么第一个括号后面的方括号是什么呢。什么意思? 如果这是真的,split函数是什么样子的?它获取结果数组的第二个索引 同: var split = document.cookie.split("="); var userName = split[1]; String.split(分隔符,

我看到了这样一句话:

userName = document.cookie.split("=")[1];
在阅读了关于split语句之后。也就是说split的语法是
string.split(分隔符、限制)
。那么第一个括号后面的方括号是什么呢。什么意思?
如果这是真的,
split
函数是什么样子的?

它获取结果数组的第二个索引

同:

var split = document.cookie.split("=");
var userName = split[1];
String.split(分隔符,限制)
返回一个数组。在Javascript中,可以使用方括号通过索引访问数组值。数组是基于零的,
0
是第一个元素,
1
是第二个元素,依此类推

与您的代码等效的代码是:

var arr = document.cookie.split("=");
userName = arr[1];
这将通过等号(
=
)分隔
document.cookie
,并从中获取第二个元素(索引1)<代码>文档。cookie是
文档
对象的一个特殊属性(数据类型:字符串),该对象包含网页的所有cookie,由
分隔字符。例如,如果document.cookie包含
name=Adam
,则数组
arr
将包含
name
Adam
的值。第二个存储在
userName

请注意,如果cookie包含多个值,或者该值包含多个等号,则它将不起作用。考虑下一个例子:


  • document.cookie
    包含
    name=Adam;home=Nowhere
    。使用上述代码,这将使
    userName
    包含
    Adam;home
    因为字符串由等号分隔,然后取第二个值

  • document.cookie
    包含
    home=Nowhere;name=Adam
    。这将导致
    用户名
    无处包含
    ;名称

  • document.cookie
    包含
    name=Adam=cool
    。在这种情况下,
    userName
    将是
    Adam
    ,而不是
    Adam=cool
此外,学校也是如此。使用更多授权来源,如Mozilla开发者网络:


    • split返回字符串数组。因此,方括号表示从返回的数组中获取第二个字符串。

      函数
      split
      返回由给定分隔符分割的字符串的
      数组。使用方括号访问(返回的)数组的第n个元素


      如果您熟悉Java,它的行为与那里的String.split()方法相同。

      您提供的代码中的方括号正在访问由
      split()返回的数组的第二个元素。函数本身返回一个数组。该代码与以下代码相同:

      var temp = document.cookie.split("=");
      userName = temp[1];
      

      Split将返回一个数组,例如[1、2、3]。如果在它之后提供方括号,它将返回括号中指定的键,在这种情况下,用户名将是2,但是

      在JavaScript中,函数参数是可选的,可以提供比函数预期的更少的参数。然后,函数中的额外参数将被取消定义。一些函数被编程来处理这种可能性,
      string.split
      就是其中之一


      另一部分与
      split
      返回数组有关。然后可以使用方括号表示法对数组进行索引,从而在函数调用后使用
      [1]

      那么
      document.cookie
      的实际含义是什么?它返回什么?
      document.cookie
      包含页面的cookie。它的行为非常特殊,当您从中检索值时,所有cookie都将返回,并用
      分隔。如果将其设置为
      name=Adam;max age=60
      ,它将设置
      name=Adam
      cookie的生存期为60秒。当我编写
      document.cookie!=“
      浏览器如何知道该特定页面曾经存储过cookie?如果没有存储cookie,
      文档。cookie
      计算结果为空字符串。示例代码:
      if(document.cookie!=“”){alert(“没有cookies”);}
      。浏览器负责存储cookie,cookie可能会在一段时间后过期(使用cookie的
      max age
      expires
      字段设置)。另请参阅链接的文档-取而代之的是一本像样的Javascript书籍。