如何将其包装到javascript函数中?
我有一段代码,我正试图将其封装在一个返回cookie值的函数中如何将其包装到javascript函数中?,javascript,function,Javascript,Function,我有一段代码,我正试图将其封装在一个返回cookie值的函数中 document.cookie.split(';').filter(function(s) { return s.search('constituency=') == 1 })[0].split(/(=)/).slice(2).join(''); 在我的浏览器控制台中,这会完美地返回cookie值。我希望能够在另一个函数中使用此值,但当我尝试将其包装到函数中时,它会显示“未定义” 有人能帮我理解为什么吗 function sp
document.cookie.split(';').filter(function(s) {
return s.search('constituency=') == 1
})[0].split(/(=)/).slice(2).join('');
在我的浏览器控制台中,这会完美地返回cookie值。我希望能够在另一个函数中使用此值,但当我尝试将其包装到函数中时,它会显示“未定义”
有人能帮我理解为什么吗
function splitValues() {
document.cookie.split(';').filter(function(s) {
return s.search('constituency=') == 1
})[0].split(/(=)/).slice(2).join('');
}
您需要返回值
function splitValues() {
return document.cookie.split( ';' ).filter(
function( s ) {
return s.search( 'constituency=' ) == 1
})[ 0 ].split( /(=)/ ).slice( 2 ).join( '' );
}
请注意
文档之前的返回,您需要返回值
function splitValues() {
return document.cookie.split( ';' ).filter(
function( s ) {
return s.search( 'constituency=' ) == 1
})[ 0 ].split( /(=)/ ).slice( 2 ).join( '' );
}
注意return
之前的document您忘记了return
语句:
function splitValues() {
return document.cookie.split(';').filter(function(s) {
//^^\\
return s.search('constituency=') == 1
})[0].split(/(=)/).slice(2).join('');
}
return
语句是函数中的第一条语句。您忘记了return
语句:
function splitValues() {
return document.cookie.split(';').filter(function(s) {
//^^\\
return s.search('constituency=') == 1
})[0].split(/(=)/).slice(2).join('');
}
return
语句是函数中的第一条语句。要使函数正常工作,您需要返回结果。在您的情况下,只在.filter()
方法的函数中返回.search()
方法的结果
您必须将.filter()
方法的结果作为一个整体返回,才能使其正常工作:↓
return document.cookie.split(';').filter(function(s) {...}...
整个功能:
function splitValues() {
return document.cookie.split(';').filter(function(s) {
return s.search('constituency=') == 1
})[0].split(/(=)/).slice(2).join('');
}
要使函数正常工作,您需要返回结果。在您的情况下,只在.filter()
方法的函数中返回.search()
方法的结果
您必须将.filter()
方法的结果作为一个整体返回,才能使其正常工作:↓
return document.cookie.split(';').filter(function(s) {...}...
整个功能:
function splitValues() {
return document.cookie.split(';').filter(function(s) {
return s.search('constituency=') == 1
})[0].split(/(=)/).slice(2).join('');
}
您需要在第2行document.cookie
之前添加return
。Right know you函数返回void
,这是未定义的
。您需要在第2行document.cookie
之前添加return
。Right know you函数返回void
,这是未定义的
。谢谢,这么简单,但它已经被难倒很久了!谢谢,这么简单,但它已经被难住了很久!