簡體   English   中英

Console.log(array) 打印結果,但 return(array) 未定義

[英]Console.log(array) prints a result, but return(array) is undefined

當我點擊 .user-name 時,我編寫了代碼來過濾掉 .user-name 的內部文本和 DATA.user 的值是相同的。

Console.log(array) 打印結果,但 return(array) 未定義

這是為什么?

 var DATA = [ { user: 'ingikim', message: 'Welcome to Code States #codestates', created_at: '2019-01-03 12:30:20' }, { user: 'satya', message: 'this is test message #pair #programming', created_at: '2019-01-04 18:30:20' }, { user: 'sundar', message: 'code now! #work #hard', created_at: '2019-01-05 07:30:20' }, { user: 'steve', message: 'Stay hungry, and stay foolish', created_at: '2015-01-03 12:30:20' }, { user: 'tim', message: 'education for real world', created_at: '2019-01-04 18:30:20' } ]; function userNameFilter() { const tweets = document.querySelector('.tweets'); function userListPrint(target) { return DATA.filter(function(el) { console.log('-------------------') console.log('e.target.innerText : ' + target.innerText) console.log('el`enter code here`.user : ' + el.user) console.log(el.user === target.innerText) return el.user === target.innerText }) } tweets.addEventListener('click', function(e) { if (e.target.className === 'user-name') { userListPrint(e.target) console.log(userListPrint(e.target)) } }); }
 <ul class="tweets"> <li> <p class="user-info"> <button class="user-name">신규유저</button> <span class="timestamp">2018-12-24 18:16:21</span> </p> <p class="user-message">texttexttexttexttext</p> </li> </ul>

Console.log(array) 打印結果,但 return(array) 未定義 為什么會這樣?

使用提供的 DATA 變量, filter方法在搜索 '신규유저' 時返回一個空數組[]並且不是undefined的。

 var DATA = [ { user: 'ingikim', message: 'Welcome to Code States #codestates', created_at: '2019-01-03 12:30:20' }, { user: 'satya', message: 'this is test message #pair #programming', created_at: '2019-01-04 18:30:20' }, { user: 'sundar', message: 'code now! #work #hard', created_at: '2019-01-05 07:30:20' }, { user: 'steve', message: 'Stay hungry, and stay foolish', created_at: '2015-01-03 12:30:20' }, { user: 'tim', message: 'education for real world', created_at: '2019-01-04 18:30:20' } ]; function userNameFilter() { const tweets = document.querySelector('.tweets'); function userListPrint(target) { return DATA.filter(function(el) { console.log('-------------------') console.log('e.target.innerText : ' + target.innerText) console.log('el.user : ' + el.user) console.log(el.user === target.innerText) return el.user === target.innerText }) } tweets.addEventListener('click', function(e) { if (e.target.className === 'user-name') { userListPrint(e.target) console.log(userListPrint(e.target)) } }); } userNameFilter();
 <ul class="tweets"> <li> <p class="user-info"> <button class="user-name">신규유저</button> <span class="timestamp">2018-12-24 18:16:21</span> </p> <p class="user-message">texttexttexttexttext</p> </li> </ul>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM