This app provides monitoring and information features for the common freifunk user and the technical stuff of a freifunk community.
Code base is taken from a TUM Practical Course project and added here to see if Freifunk Altdorf can use it.
https://www.freifunk-altdorf.de
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
27 lines
846 B
27 lines
846 B
// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length) |
|
'use strict'; |
|
var toObject = require('./$.to-object') |
|
, toIndex = require('./$.to-index') |
|
, toLength = require('./$.to-length'); |
|
|
|
module.exports = [].copyWithin || function copyWithin(target/*= 0*/, start/*= 0, end = @length*/){ |
|
var O = toObject(this) |
|
, len = toLength(O.length) |
|
, to = toIndex(target, len) |
|
, from = toIndex(start, len) |
|
, $$ = arguments |
|
, end = $$.length > 2 ? $$[2] : undefined |
|
, count = Math.min((end === undefined ? len : toIndex(end, len)) - from, len - to) |
|
, inc = 1; |
|
if(from < to && to < from + count){ |
|
inc = -1; |
|
from += count - 1; |
|
to += count - 1; |
|
} |
|
while(count-- > 0){ |
|
if(from in O)O[to] = O[from]; |
|
else delete O[to]; |
|
to += inc; |
|
from += inc; |
|
} return O; |
|
}; |