| 717 | } |
| 718 | |
| 719 | func (r *Runtime) arrayproto_every(call FunctionCall) Value { |
| 720 | o := call.This.ToObject(r) |
| 721 | length := toLength(o.self.getStr("length", nil)) |
| 722 | callbackFn := r.toCallable(call.Argument(0)) |
| 723 | fc := FunctionCall{ |
| 724 | This: call.Argument(1), |
| 725 | Arguments: []Value{nil, nil, o}, |
| 726 | } |
| 727 | for k := int64(0); k < length; k++ { |
| 728 | idx := valueInt(k) |
| 729 | if val := o.self.getIdx(idx, nil); val != nil { |
| 730 | fc.Arguments[0] = val |
| 731 | fc.Arguments[1] = idx |
| 732 | if !callbackFn(fc).ToBoolean() { |
| 733 | return valueFalse |
| 734 | } |
| 735 | } |
| 736 | } |
| 737 | return valueTrue |
| 738 | } |
| 739 | |
| 740 | func (r *Runtime) arrayproto_some(call FunctionCall) Value { |
| 741 | o := call.This.ToObject(r) |