end

end 用于结束 blockloopifelse。在其他示例中,我们使用了不需要 end 的 s 表达式语法,因此您在这里的其他示例中不会找到它。然而,了解它仍然很有用,因为这是浏览器在开发者工具中显示的内容。

试一试

(module
  ;; import the browser console object, you'll need to pass this in from JavaScript
  (import "console" "log" (func $log (param i32)))

  (func
    i32.const 0 ;; change to positive number if you want to run the if block
    if
      i32.const 1
      call $log ;; should log '1'
    end
  )

  (start 1) ;; run the first function automatically
)
const url = "{%wasm-url%}";
await WebAssembly.instantiateStreaming(fetch(url), { console });

语法

wat
i32.const 0
if
  ;; do something
end
指令 二进制操作码
end 0x0b