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书籍。