如何使用JavaScript循环遍历数组中的所有条目?
我以为它是这样的:
forEach(instance in theArray)
Run Code Online (Sandbox Code Playgroud)
theArray我的阵列在哪里,但这似乎是不正确的.
我有一个像以下JavaScript对象:
var p = {
"p1": "value1",
"p2": "value2",
"p3": "value3"
};
Run Code Online (Sandbox Code Playgroud)
现在我想通过所有回路p元素(p1,p2,p3...),并得到他们的键和值.我怎样才能做到这一点?
如有必要,我可以修改JavaScript对象.我的最终目标是遍历一些键值对,如果可能的话,我想避免使用eval.
我想知道是否有办法foreach在JavaScript中执行类似PHP 循环的操作.我正在寻找的功能就像这个PHP代码片段:
foreach($data as $key => $value) { }
Run Code Online (Sandbox Code Playgroud)
我在看JS for..in循环,但似乎没有办法指定as.如果我使用'normal'for loop(for(var i = 0; i < data.length; i++)执行此操作,是否有办法获取key => value对?
var user = {};
Run Code Online (Sandbox Code Playgroud)
现在我想创建一个setUsers()接受键/值对对象并初始化user变量的方法.
setUsers = function(data) {
// loop and init user
}
Run Code Online (Sandbox Code Playgroud)
数据如下:
234: "john", 23421: "smith", ....
Run Code Online (Sandbox Code Playgroud) 当我在TypeScript上使用yield*表达式时,它总是会出错.
类型'IterableIterator'不是数组类型.
如何正确设置类型而不使用any以避免错误?
function* g1(): IterableIterator<number> {
yield 2;
yield 3;
yield 4;
}
function* g2(): IterableIterator<number> {
yield 1;
// ERROR: Type 'IterableIterator<number>' is not an array type.
yield* g1();
yield 5;
}
const iterator = g2();
Run Code Online (Sandbox Code Playgroud) 这是我的字典:
const dict = {
"x" : 1,
"y" : 6,
"z" : 9,
"a" : 5,
"b" : 7,
"c" : 11,
"d" : 17,
"t" : 3
};
Run Code Online (Sandbox Code Playgroud)
我需要一种方法来将dict字典从最小到最大,或从最大到最小.或者甚至没问题我有一个带有排序键的数组.但我不知道如何使用这样的东西javascript.在使用之前我已经完成了python,像这样:
import heapq
from operator import itemgetter
thirty_largest = heapq.nlargest(8, dict.iteritems(), key=itemgetter(1))
Run Code Online (Sandbox Code Playgroud)
我在谷歌搜索过它,我发现数组有sort()功能但没有字典.所以我的问题是:我如何对字典进行排序或按排序顺序获得前5大值?
我是Angular2的新手,我正在尝试遍历一个JSON对象,我从GET请求中返回但无法解决它.
我的JSON对象:
{
Results: [{
Time: "2017-02-11T08:15:01.000+00:00",
Id: "data-mopdsjkajskda",
AuthorId: "58fSDNJD"
}, {
Time: "2017-03-11T06:23:34.000+00:00",
Id: "data-2371212hjb1",
AuthorId: "43555HHHJ"
}, {
Time: "2017-04-11T07:05:11.000+00:00",
Id: "data-kjskdha22112",
AuthorId: "XDSJKJSDH"
}]
}
Run Code Online (Sandbox Code Playgroud)
我的Angular脚本的一部分:
interface res {
Time: string;
Id: string;
AuthorId: string;
}
export class AppComponent {
results: res;
constructor(private _httpservice: HTTPService) {}
this._httpservice.getQuery().subscribe(
data => {
this.results = data.Results
},
error => console.log(error),
() => console.log('Done')
);
}
Run Code Online (Sandbox Code Playgroud)
我确实得到了数据 - 这很棒.但是,我想将Ids推入一个数组.在Javascript中我会这样做:
var ids = [];
for (i = 0; i < data.Results.length; …Run Code Online (Sandbox Code Playgroud) 我正在使用 ionic 4 来构建一个应用程序。而我的应用程序在浏览器上运行良好,但是当我构建 android 平台时,它给了我这一行的错误
for (let [index, p] of this.cart.entries())
Run Code Online (Sandbox Code Playgroud)
我的打字稿版本是 3.7.2
错误是
类型 'IterableIterator<[number, any]>' 不是数组类型或字符串类型。使用编译器选项“--downlevelIteration”来允许迭代器迭代。
javascript ×5
loops ×3
typescript ×3
foreach ×2
iteration ×2
angular ×1
arrays ×1
dictionary ×1
each ×1
for-loop ×1
ionic4 ×1
json ×1
key-value ×1
object ×1
sorting ×1