久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

JavaScript、angular2中如何從for循環的值中重組一個數組

瀏覽:135日期:2023-05-31 11:40:08

問題描述

比如我有一個數組

let arry = [{'selected':true,'name':'Tony'},{'selected':false,'name':'Lily'},{'selected':true,'name':'Liyang'}];

JS中我使用for循環如何獲取僅selected為true的值?

for(var i=0;i<arry.length;i++){ if(arry[i].selected=true){console.log(arry[i].name) }}

以上的for中國,打印出來的依然是3個字符串。而我僅需要['Tony','Liyang']這樣的格式,我該如何才能獲取?之前試過使用push添加到一個空數組中,但是push中每for一次就僅push當前for到的值,而并不會將所有值添加到一個數組中去!求大神幫幫忙!

問題解答

回答1:

if(arry[i].selected=true)

這里錯了,寫成了賦值。

回答2:

一個=是賦值,兩個=是比較,樓主下次寫的時候細心點,有時候邏輯沒問題,但就是運行不起來,那么可能是哪個位置語法有問題了。

回答3:

直接用arry[i].selected判定就好了,為啥要判斷值是否相等啊?

回答4:

var newArr = []arry.forEach(function(value){if(value.selected) newArr.push(value.name)})回答5:

用 filter 和 map 處理多方便的

let arry = [ { 'selected': true, 'name': 'Tony' }, { 'selected': false, 'name': 'Lily' }, { 'selected': true, 'name': 'Liyang' }];let selected = arry.filter(m => m.selected);console.log('selected', selected);let names = selected.map(m => m.name);console.log('names', names);// 連起來let result = arry .filter(m => m.selected) .map(m => m.name);console.log('result', result);

JavaScript、angular2中如何從for循環的值中重組一個數組

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 汕头市| 麻城市| 蕉岭县| 涡阳县| 满洲里市| 漳平市| 禹州市| 福州市| 东乌珠穆沁旗| 南投市| 楚雄市| 黎川县| 博野县| 武川县| 沙湾县| 泌阳县| 景东| 崇阳县| 工布江达县| 绵竹市| 永登县| 庆元县| 阳东县| 历史| 禹州市| 高唐县| 南郑县| 察哈| 永吉县| 辽阳市| 青阳县| 睢宁县| 阿拉善左旗| 邵阳县| 虞城县| 齐河县| 镶黄旗| 马尔康县| 金川县| 全椒县| 连山|