Float64Array

变更梗概

变更详情

Symbol.iterator变更

ArkTS1.1版本签名:
[Symbol.iterator](): IterableIterator<number>

返回值:

类型 说明
IterableIterator<number> Float64Array的迭代器。

示例:

let a = new Float64Array(3);
let iter = Reflect.get(a, Symbol.iterator);

ArkTS1.2版本签名:
$_iterator(): IterableIterator<number>

返回值:

类型 说明
IterableIterator<number> Float64Array的迭代器。

示例:

let a = new Float64Array(3);
let iter = a.$_iterator();

适配建议: 建议仅使用for...of访问迭代器,不要显示访问迭代器。

every变更

ArkTS1.1版本签名:
every(predicate: (value: number, index: number, array: Float64Array) => unknown, thisArg?: any): boolean

参数:

参数名 类型 必填 说明
predicate function 用于测试每个元素的函数。
thisArg any 执行predicatethis指向的对象,默认值为undefined。

predicate函数参数说明:

参数名 类型 必填 说明
value number 当前被遍历的number值。
index number 当前元素的索引。
array Float64Array 调用的原始Float64Array对象。

predicate函数返回值说明:

类型 说明
unknown 返回值会被隐式转换为boolean,决定当前元素是否通过检查。

返回值:

类型 说明
boolean 表示是否所有元素都通过测试。true表示全部都通过,false表示全部都不通过。

示例:

class C {
  comp(element: number, index: number, array: Float64Array): boolean {
    return element > this.base;
  }
  base: number;
  constructor(base: number) {
    this.base = base;
  }
}
let arr: Float64Array = new Float64Array([1, 2, 3]);
let result = arr.every(new C(1).comp, new C(2));

ArkTS1.2版本签名:
every(predicate: (value: number, index: number, array: Float64Array) => boolean): boolean

参数:

参数名 类型 必填 说明
predicate function 用于测试每个元素的函数。

predicate函数参数说明:

参数名 类型 必填 说明
value number 当前被遍历的number值。
index number 当前元素的索引。
array Float64Array 调用的原始Float64Array对象。

predicate函数返回值说明:

类型 说明
boolean 表示当前元素是否通过检查,true表示当前元素通过检查,false表示未通过。

返回值:

类型 说明
boolean 表示是否所有元素都通过测试。true表示全部都通过,false表示全部都不通过。

示例:

class C {
    base: number;
    constructor(base:number) {
        this.base = base;
    }
    callEvery(arr: Float64Array) {
        return arr.every((value: number, index: number, arr: Float64Array)=>{return value < this.base})
    }
}
function main() {
  let arr: Float64Array = new Float64Array([1, 2, 3]);
  let a = new C(2)
  let b = new C(4)
  a.callEvery(arr) // false
  b.callEvery(arr) // true
}

适配建议: 删除最后一个参数,不使用显式指定this的语义。若必须使用,可使用闭包。

filter变更

ArkTS1.1版本签名:
filter(predicate: (value: number, index: number, array: Float64Array) => any, thisArg?: any): Float64Array

参数:

参数名 类型 必填 说明
predicate function 用于测试每个元素的函数。
thisArg any 执行 predicatethis 指向的对象,默认值为undefined。

predicate函数参数说明:

参数名 类型 必填 说明
value number 当前被遍历的数组元素的值。
index number 当前元素的索引。
array Float64Array 调用的原始Float64Array数组。

predicate函数返回值说明:

类型 说明
any

返回值:

类型 说明
Float64Array 包含所有满足predicate的元素的新数组。

示例:

class C {
  comp(element: number, index: number, array: Float64Array): boolean {
    return element > this.base;
  }
  base: number;
  constructor(base: number) {
    this.base = base;
  }
}
let arr: Float64Array = new Float64Array([1, 2, 3]);
let result = arr.filter(new C(1).comp, new C(2));

ArkTS1.2版本签名:
filter(predicate: (value: number, index: number, array: Float64Array) => boolean): Float64Array

参数:

参数名 类型 必填 说明
predicate function 用于测试每个元素的函数。

predicate函数参数说明:

参数名 类型 必填 说明
value bigint 当前被遍历的数组元素的值。
index number 当前元素的索引。
array Float64Array 调用的原始Float64Array数组。

predicate函数返回值说明:

类型 说明
boolean 表示是否过滤当前元素,true表示保留当前元素,false表示过滤掉当前元素。

返回值:

类型 说明
Float64Array 包含所有满足predicate的元素的新数组。

示例:

class C {
    base: number;
    constructor(base:number) {
        this.base = base;
    }
    call(arr: Float64Array) {
        return arr.filter((value: number, index: number, arr: Float64Array)=>{return value < this.base})
    }
}
let arr: Float64Array = new Float64Array([1, 2, 3]);
let a = new C(2)
let b = new C(3)
a.call(arr) // [1]
b.call(arr) // [1, 2]

适配建议: 删除最后一个参数,不使用显式指定this的语义。若必须使用,可使用闭包。

find变更

ArkTS1.1版本签名:
find(predicate: (value: number, index: number, array: Float64Array) => boolean, thisArg?: any): number | undefined

参数:

参数名 类型 必填 说明
predicate function 用于测试每个元素的函数。
thisArg any 执行predicatethis指向的对象,默认值为undefined。

predicate函数参数说明:

参数名 类型 必填 说明
value bigint 当前被遍历的数组元素的值。
index number 当前元素的索引。
array Float64Array 调用的原始Float64Array数组。

predicate函数返回值说明:

类型 说明
boolean 表示当前是否找到匹配项,true表示找到,false表示没找到。

返回值:

类型 说明
number | undefined 如果找到满足predicate的元素,则返回该元素,否则返回undefined

示例:

class C {
  comp(element: number, index: number, array: Float64Array): boolean {
    return element > this.base;
  }
  base: number;
  constructor(base: number) {
    this.base = base;
  }
}
let arr: Float64Array = new Float64Array([1, 2, 3]);
let result = arr.find(new C(1).comp, new C(2));

ArkTS1.2版本签名:
find(predicate: (value: number, index: number, array: Float64Array) => boolean): number | undefined

参数:

参数名 类型 必填 说明
predicate function 用于测试每个元素的函数。

predicate函数参数说明:

参数名 类型 必填 说明
value bigint 当前被遍历的数组元素的值。
index number 当前元素的索引。
array Float64Array 调用的原始Float64Array数组。

predicate函数返回值说明:

类型 说明
boolean 表示当前是否找到匹配项,true表示找到,false表示没找到。

返回值:

类型 说明
`number undefined`

示例:

class C {
    base: number;
    constructor(base:number) {
        this.base = base;
    }
    call(arr: Float64Array) {
        return arr.find((value: number, index: number, arr: Float64Array)=>{return value >= this.base})
    }
}
let arr: Float64Array = new Float64Array([1, 2, 3]);
let a = new C(2)
let b = new C(3)
a.call(arr) // 2
b.call(arr) // 3

console.info(a.call(arr))
console.info(b.call(arr))

适配建议: 删除最后一个参数,不使用显式指定this的语义。若必须使用,可使用闭包。

findIndex变更

ArkTS1.1版本签名:
findIndex(predicate: (value: number, index: number, array: Float64Array) => boolean, thisArg?: any): number

参数:

参数名 类型 必填 说明
predicate function 用于测试每个元素的函数。
thisArg any 执行predicatethis指向的对象,默认值为undefined。

predicate函数参数说明:

参数名 类型 必填 说明
value bigint 当前被遍历的数组元素的值。
index number 当前元素的索引。
array Float64Array 调用的原始Float64Array数组。

predicate函数返回值说明:

类型 说明
boolean 表示当前是否找到匹配项,true表示找到,false表示没找到。

返回值:

类型 说明
number 如果找到满足predicate的元素,则返回该元素的索引,否则返回-1表示未找到满足的元素。

示例:

class C {
  comp(element: number, index: number, array: Float64Array): boolean {
    return element > this.base;
  }
  base: number;
  constructor(base: number) {
    this.base = base;
  }
}
let arr: Float64Array = new Float64Array([1, 2, 3]);
let result = arr.findIndex(new C(1).comp, new C(2));

ArkTS1.2版本签名:
findIndex(predicate: (value: number, index: number, array: Float64Array) => boolean): number

参数:

参数名 类型 必填 说明
predicate function 用于测试每个元素的函数。

predicate函数参数说明:

参数名 类型 必填 说明
value bigint 当前被遍历的数组元素的值。
index number 当前元素的索引。
array Float64Array 调用的原始Float64Array数组。

predicate函数返回值说明:

类型 说明
boolean 表示当前是否找到匹配项,true表示找到,false表示没找到。

返回值:

类型 说明
number 如果找到满足predicate的元素,则返回该元素的索引,否则返回-1表示未找到满足的元素。

示例:

class C {
    base: number;
    constructor(base:number) {
        this.base = base;
    }
    call(arr: Float64Array) {
        return arr.findIndex((value: number, index: number, arr: Float64Array)=>{return value >= this.base})
    }
}
let arr: Float64Array = new Float64Array([1, 2, 3]);
let a = new C(2)
let b = new C(3)
a.call(arr) // 1
b.call(arr) // 2

适配建议: 删除最后一个参数,不使用显式指定this的语义。若必须使用,可使用闭包。

forEach变更

ArkTS1.1版本签名:
forEach(callbackfn: (value: number, index: number, array: Float64Array) => void, thisArg?: any): void

参数:

参数名 类型 必填 说明
callbackfn function 为数组中的每个元素执行的函数。
thisArg any 执行callbackfnthis指向的对象,默认值为undefined。

callbackfn函数参数说明:

参数名 类型 必填 说明
value bigint 当前被遍历的数组元素的值。
index number 当前元素的索引。
array Float64Array 调用的原始Float64Array数组。

示例:

class C {
  comp(element: number, index: number, array: Float64Array): boolean {
    return element > this.base;
  }
  base: number;
  constructor(base: number) {
    this.base = base;
  }
}
let arr: Float64Array = new Float64Array([1, 2, 3]);
let result = arr.forEach(new C(1).comp, new C(2));

ArkTS1.2版本签名:
forEach(callbackfn: (value: number, index: number, array: Float64Array) => void): void

参数:

参数名 类型 必填 说明
callbackfn function 为数组中的每个元素执行的函数。

callbackfn函数参数说明:

参数名 类型 必填 说明
value bigint 当前被遍历的数组元素的值。
index number 当前元素的索引。
array Float64Array 调用的原始Float64Array数组。

示例:

class C {
    base: number;
    constructor(base:number) {
        this.base = base;
    }
    call(arr: Float64Array) {
        return arr.forEach((value: number, index: number, arr: Float64Array)=>{console.info(value + this.base)})
    }
}
let arr: Float64Array = new Float64Array([1, 2, 3]);
let a = new C(2)
let b = new C(3)
a.call(arr)
b.call(arr)

适配建议: 删除最后一个参数,不使用显式指定this的语义。若必须使用,可使用闭包。

map变更

ArkTS1.1版本签名:
map(callbackfn: (value: number, index: number, array: Float64Array) => number, thisArg?: any): Float64Array

参数:

参数名 类型 必填 说明
callbackfn function 为数组中的每个元素调用的函数,返回新数组中的元素。
thisArg any 执行callbackfnthis指向的对象,默认值为undefined。

callbackfn函数参数说明:

参数名 类型 必填 说明
value bigint 当前被遍历的数组元素的值。
index number 当前元素的索引。
array Float64Array 调用的原始Float64Array数组。

callbackfn函数返回值说明:

类型 说明
number 当前函数计算后新得到的number值。

返回值:

类型 说明
Float64Array 一个新的 Float64Array,包含callbackfn对每个元素的调用结果。

示例:

class C {
  map(element: number, index: number, array: Float64Array): number {
    return this.base;
  }
  base: number;
  constructor(base: number) {
    this.base = base;
  }
}
let arr: Float64Array = new Float64Array([1, 2, 3]);
let result = arr.map(new C(1).map, new C(2));

ArkTS1.2版本签名:
map(callbackfn: (value: number, index: number, array: Float64Array) => number): Float64Array

参数:

参数名 类型 必填 说明
callbackfn function 为数组中的每个元素调用的函数,返回新数组中的元素。

callbackfn函数参数说明:

参数名 类型 必填 说明
value bigint 当前被遍历的数组元素的值。
index number 当前元素的索引。
array Float64Array 调用的原始Float64Array数组。

callbackfn函数返回值说明:

类型 说明
number 当前函数计算后新得到的number值。

返回值:

类型 说明
Float64Array 一个新的Float64Array,包含callbackfn对每个元素的调用结果。

示例:

class C {
    base: number;
    constructor(base:number) {
        this.base = base;
    }
    call(arr: Float64Array) {
        return arr.map((value: number, index: number, arr: Float64Array)=>{return value + this.base})
    }
}
function main() {
  let arr: Float64Array = new Float64Array([1, 2, 3]);
  let a = new C(2)
  let b = new C(3)
  a.call(arr)
  b.call(arr)
}

适配建议: 删除最后一个参数,不使用显式指定this的语义。若必须使用,可使用闭包。

some变更

ArkTS1.1版本签名:
some(predicate: (value: number, index: number, array: Float64Array) => unknown, thisArg?: any): boolean

参数:

参数名 类型 必填 说明
predicate function 用于测试每个元素的函数。
thisArg any 执行predicatethis指向的对象,默认值为undefined。

predicate函数参数说明:

参数名 类型 必填 说明
value bigint 当前被遍历的数组元素的值。
index number 当前元素的索引。
array Float64Array 调用的原始Float64Array数组。

predicate函数返回值说明:

类型 说明
boolean 表示当前元素是否满足predicatetrue表示满足,false表示不满足。

返回值:

类型 说明
boolean 表示是否至少有一个元素通过测试。true表示至少有一个元素通过测试,false表示没有任何元素通过。

示例:

class C {
  comp(element: number, index: number, array: Float64Array): boolean {
    return element > this.base;
  }
  base: number;
  constructor(base: number) {
    this.base = base;
  }
}
let arr: Float64Array = new Float64Array([1, 2, 3]);
let result = arr.some(new C(1).comp, new C(2));

ArkTS1.2版本签名:
some(predicate: (value: number, index: number) => boolean): boolean

参数:

参数名 类型 必填 说明
predicate function 用于测试每个元素的函数。

predicate函数参数说明:

参数名 类型 必填 说明
value bigint 当前被遍历的数组元素的值。
index number 当前元素的索引。
array Float64Array 调用的原始Float64Array数组。

predicate函数返回值说明:

类型 说明
boolean 表示当前元素是否满足predicatetrue表示满足,false表示不满足。

返回值:

类型 说明
boolean 表示是否至少有一个元素通过测试。true表示至少有一个元素通过测试,false表示没有任何元素通过。

示例:

class C {
    base: number;
    constructor(base:number) {
        this.base = base;
    }
    call(arr: Float64Array) {
        return arr.some((value: number, index: number, arr: Float64Array)=>{return value > this.base})
    }
}
function main() {
  let arr: Float64Array = new Float64Array([1, 2, 3]);
  let a = new C(2)
  let b = new C(3)
  a.call(arr)
  b.call(arr)
}

适配建议: 删除最后一个参数,不使用显式指定this的语义。若必须使用,可使用闭包。

from静态方法变更1

ArkTS1.1版本签名:
static from<T>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => number, thisArg?: any): Float64Array

参数:

参数名 类型 必填 说明
arrayLike ArrayLike<T> 类似数组或可迭代的对象。
mapfn function arrayLike中的每个元素调用的函数,返回新数组中的元素。
thisArg any 执行mapfnthis指向的对象,默认值为undefined。

mapfn函数参数说明:

参数名 类型 必填 说明
v T 当前被遍历的数组元素的值。
k number 当前元素的索引。

mapfn函数返回值说明:

类型 说明
number 返回的一个number类型值,作为新Float64Array的元素

返回值:

类型 说明
Float64Array 一个新的 Float64Array,包含mapfnarrayLike中每个元素的调用结果。

示例:

class C {
  base: number;
  constructor(base:number) {
    this.base = base;
  }
  foo(value: number, index: number) {
    return value + this.base
  }
}

let arr: Float64Array = new Float64Array([1, 2, 3]);
let a = new C(2);
let b = new C(3);
let arr2 = Float64Array.from(arr, a.foo, a)
let arr3 = Float64Array.from(arr, a.foo, b)

ArkTS1.2版本签名:
static from<T>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => number): Float64Array

参数:

参数名 类型 必填 说明
arrayLike ArrayLike<U> 类似数组或可迭代的对象。
mapfn function arrayLike中的每个元素调用的函数,返回新数组中的元素。

mapfn函数参数说明:

参数名 类型 必填 说明
v T 当前被遍历的数组元素的值。
k number 当前元素的索引。

mapfn函数返回值说明:

类型 说明
number 返回的一个number类型值,作为新Float64Array的元素

返回值:

类型 说明
Float64Array 一个新的 Float64Array,包含mapfnarrayLike中每个元素的调用结果。

示例:

class C {
    base: number;
    constructor(base:number) {
        this.base = base;
    }
    call(arr:Float64Array) {
        return Array.from(arr, (value: number, index: number)=>{return value + this.base})
    }
}
function main() {
  let arr: Float64Array = new Float64Array([1, 2, 3]);
  let a = new C(2)
  let b = new C(3)
  a.call(arr)
  b.call(arr)
}

适配建议: 删除最后一个参数,不使用显式指定this的语义。若必须使用,可使用闭包。

from静态方法变更2

ArkTS1.1版本签名:
static from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Float64Array

参数:

参数名 类型 必填 说明
arrayLike Iterable<number> 可迭代的数值集合
mapfn function 选映射函数,对每个元素进行转换处理,默认undefined。
thisArg any 执行mapfnthis指向的对象,默认undefined。

mapfn函数参数说明:

参数名 类型 必填 说明
v number 当前被遍历的数组元素的值。
k number 当前元素的索引。

mapfn函数返回值说明:

类型 说明
number 返回的一个number类型值,作为新Float64Array的元素

返回值:

类型 说明
Float64Array 从指定数据源创建的新的 64 位浮点型数组。

示例:

class C {
  base: number;
  constructor(base:number) {
    this.base = base;
  }
  foo(value: number, index: number) {
    return value + this.base
  }
}

let arr: Float64Array = new Float64Array([1, 2, 3]);
let a = new C(2);
let b = new C(3);
let arr2 = Float64Array.from(arr, a.foo, a)
let arr3 = Float64Array.from(arr, a.foo, b)

ArkTS1.2版本签名:
static from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number): Float64Array

参数:

参数名 类型 必填 说明
arrayLike Iterable<number> 可迭代的数值集合
mapfn function 选映射函数,对每个元素进行转换处理,默认undefined。

mapfn函数参数说明:

参数名 类型 必填 说明
v number 当前被遍历的数组元素的值。
k number 当前元素的索引。

mapfn函数返回值说明:

类型 说明
number 返回的一个number类型值,作为新Float64Array的元素

返回值:

类型 说明
Float64Array 从指定数据源创建的新的 64 位浮点型数组。

示例:

class C {
  base: number;
  constructor(base:number) {
      this.base = base;
  }
  call(arr: Float64Array) {
      return Array.from(arr, (value: number, index: number)=>{return value + this.base})
  }
}
function main() {
  let arr: Float64Array = new Float64Array([1, 2, 3]);
  let a = new C(2)
  let b = new C(3)
  a.call(arr)
  b.call(arr)
}

适配建议: 删除最后一个参数,不使用显式指定this的语义。若必须使用,可使用闭包。