fre*_*ent 0 javascript arrays jquery for-loop
我想知道为什么这会失败一段时间:
if (longest.length >= 3) {
for ( var i = 0; i < longest.length-1; i++) {
var $last[i] = longest[i].splice(-1).toString();
//if ( $( $last[i] ).closest(':jqmData(role="panel")') == "popover" ) {
//var gotoPage = $last[i];
// }
}
}
Run Code Online (Sandbox Code Playgroud)
longest 是一个包含数组元素的数组.
我想遍历数组中的数组longest并从每个嵌套数组的最后一个元素创建变量..splice(-1).toString()无法告诉我"missing ; before statement"
我究竟做错了什么?
编辑: 最长的将看起来像这样:
[[#menu, #menuSub1, #menuSub2], [#main, yield, yield], [#pop1, #pop1-1, #pop1-2]]
它可以在具有不同面板的移动应用程序中跟踪浏览器历史记录.
EDIT2: 完成代码(Thx Mic):
if (longest.length >= 3) {
var $last = [];
for ( var i = 0; i < longest.length; i++) {
$last.push( longest[i][ longest[i].length - 1 ]);
if ( $( $last[i] ).closest(':jqmData(role="panel")').jqmData('panel') == "popover" ) {
var gotoPage = $last[i]; }
}
}
Run Code Online (Sandbox Code Playgroud)
你应该写一些类似的东西:
if (longest.length >= 3) {
var $last = [];
for ( var i = 0; i < longest.length-1; i++) {
$last.push( longest[i][ longest[i].length - 1 ] );
}
}
Run Code Online (Sandbox Code Playgroud)
并获得值 $last[0]
或使用像:
if (longest.length >= 3) {
var hash = {};
for ( var i = 0; i < longest.length-1; i++) {
hash['$last'+ i] = longest[i][ longest[i].length - 1 ];
}
}
Run Code Online (Sandbox Code Playgroud)
并使用例如获取内容 hash.$last0