阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

      教程列表

      抓包专区
      测试专区

      JS fill()

      **fill()** 方法将类型化数组中的从起始索引到终止索引内的全部元素。这个方法的算法和 Array.prototype.fill() 相同。 TypedArray 是这里的类型化数组类型之一。

      语法

      typedarray.fill(value[, start = 0[, end = this.length]])
      

      参数

      value

      用来填充类型化数组元素的值。

      start

      可选参数。起始索引,默认值为 0。

      end

      可选参数。终止索引(填充范围不包含此索引),默认值为 this.length

      返回值

      修改后的类型化数组。

      描述

      将被元素填充的区间是 [start, end)。

      **fill **方法接受三个参数 valuestart 以及 end。``start 和 end 参数是可选的,默认值分别为 0this.length。

      如果 start 参数是负值,它会被视为 length+start,其中 length 是类型化数组的长度。如果 end 参数是负值,它会被视为 length+end。

      示例

      new Uint8Array([1, 2, 3]).fill(4);         // Uint8Array [4, 4, 4]
      new Uint8Array([1, 2, 3]).fill(4, 1);      // Uint8Array [1, 4, 4]
      new Uint8Array([1, 2, 3]).fill(4, 1, 2);   // Uint8Array [1, 4, 3]
      new Uint8Array([1, 2, 3]).fill(4, 1, 1);   // Uint8Array [1, 2, 3]
      new Uint8Array([1, 2, 3]).fill(4, -3, -2); // Uint8Array [4, 2, 3]
      
      

      兼容实现

      由于并没有一个名为 TypedArray 的全局变量,我们必须“按需添加”兼容实现。请配合Array.prototype.fill()的兼容实现使用以下的“兼容实现”

      // https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.fill
      if (!Uint8Array.prototype.fill) {
        Uint8Array.prototype.fill = Array.prototype.fill;
      }
      
      

      规范

      规范状态注释
      [ECMAScript 2015 (6th Edition, ECMA-262)
      TypedArray.prototype.fill](https://www.ecma-international.org/ecma-262/6.0/#sec-%typedarray%.prototype.fill)Standard最初定义。
      [ECMAScript Latest Draft (ECMA-262)
      TypedArray.prototype.fill](https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.fill)Draft 

      浏览器兼容性

      We’re converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven’t yet converted the data it contains.

      • Desktop
      • Mobile
      特性ChromeFirefox (Gecko)Internet ExplorerOperaSafari
      基础支持4537 (37)未实现32未实现
      特性AndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
      基础支持未实现未实现37 (37)未实现未实现未实现

      相关

      目录
      目录