Q
Size: a a a
K
V
V
ВР
V
L
L
V
V
V
K
L
K
L
Array.prototype.splice = function(offset, length, ...items) {
offset = Math.floor(offset);
length = Math.floor(length);
if ( offset < 0 )
offset = offset - Math.floor(offset / this.length) * this.length;
length = Math.max(0, Math.min(this.length - offset, length));
offset = Math.max(0, Math.min(this.length, offset));
//console.log(offset, length);
const finalLength = this.length - length + items.length;
let srcStartOffset = offset + length;
let srcEndOffset = this.length - 1;
let dstStartOffset = offset + items.length;
let dstEndOffset = dstStartOffset + (srcEndOffset - srcStartOffset);
const moveLength = this.length - offset - length;
const removeArray = [];
for(let i = 0; i < length; i++)
removeArray.push(this[offset + i]);
if ( srcStartOffset > dstStartOffset )
while(srcStartOffset <= srcEndOffset)
this[dstStartOffset++] = this[srcStartOffset++];
else
while(srcStartOffset <= srcEndOffset)
this[dstEndOffset--] = this[srcEndOffset--];
for(const item of items)
this[offset++] = item;
this.length = finalLength;
return removeArray;
}
S
Array.prototype.splice = function(offset, length, ...items) {
offset = Math.floor(offset);
length = Math.floor(length);
if ( offset < 0 )
offset = offset - Math.floor(offset / this.length) * this.length;
length = Math.max(0, Math.min(this.length - offset, length));
offset = Math.max(0, Math.min(this.length, offset));
//console.log(offset, length);
const finalLength = this.length - length + items.length;
let srcStartOffset = offset + length;
let srcEndOffset = this.length - 1;
let dstStartOffset = offset + items.length;
let dstEndOffset = dstStartOffset + (srcEndOffset - srcStartOffset);
const moveLength = this.length - offset - length;
const removeArray = [];
for(let i = 0; i < length; i++)
removeArray.push(this[offset + i]);
if ( srcStartOffset > dstStartOffset )
while(srcStartOffset <= srcEndOffset)
this[dstStartOffset++] = this[srcStartOffset++];
else
while(srcStartOffset <= srcEndOffset)
this[dstEndOffset--] = this[srcEndOffset--];
for(const item of items)
this[offset++] = item;
this.length = finalLength;
return removeArray;
}
L
GR
SEX: "<option id="none" value="none">Выбрать</option><option selected="selected" value="M" id="male">Мужской</option><option value="F" id="female">Женский</option>"
S
SEX: "<option id="none" value="none">Выбрать</option><option selected="selected" value="M" id="male">Мужской</option><option value="F" id="female">Женский</option>"
K