PerformanceScriptTiming: toJSON() 方法

可用性有限

此特性不是基線特性,因為它在一些最廣泛使用的瀏覽器中不起作用。

實驗性: 這是一項實驗性技術
在生產中使用此技術之前,請仔細檢查瀏覽器相容性表格

PerformanceScriptTiming 介面的 toJSON() 方法是一個 序列化器;它會返回 PerformanceScriptTiming 物件的 JSON 表示形式。

語法

js
toJSON()

引數

無。

返回值

一個 JSON 物件,表示 PerformanceScriptTiming 物件的序列化形式。

示例

使用 toJSON 方法

在此示例中,呼叫 entry.toJSON() 會返回在觀察到的長動畫幀中可用的第一個 PerformanceScriptTiming 物件的 JSON 表示形式。

js
const observer = new PerformanceObserver((list) => {
  list.getEntries().forEach((entry) => {
    console.log(entry.scripts[0].toJSON());
  });
});

observer.observe({ type: "long-animation-frame", buffered: true });

這將記錄如下物件

js
({
  duration: 45,
  entryType: "script",
  executionStart: 11803.199999999255,
  forcedStyleAndLayoutDuration: 0,
  invoker: "DOMWindow.onclick",
  invokerType: "event-listener",
  name: "script",
  pauseDuration: 0,
  sourceURL: "https://web.dev/js/index-ffde4443.js",
  sourceFunctionName: "myClickHandler",
  sourceCharPosition: 17796,
  startTime: 11803.199999999255,
  windowAttribution: "self",
});

要獲取 JSON 字串,您可以直接使用 JSON.stringify(entry);它會自動呼叫 toJSON()

規範

規範
Long Animation Frames API
# dom-performancescripttiming-tojson

瀏覽器相容性

另見