当前位置: 首页 > news >正文

建设网站用哪个主机好企业网站数防泄露怎么做

建设网站用哪个主机好,企业网站数防泄露怎么做,动漫专业就业前景,温州做外贸网站设计文章目录 1. wasm是什么1.1 chatgpt定义如下:1.2 wasm关键特性: 2. wasm demo2.1 cargo 创建项目2.2 编写code2.3 安装wasm-pack2.4 编译 3.1 html页面引用wasm代码(js引用)3.2 访问页面4 导入js function4.1 编写lib.rs文件,内容…

文章目录

    • 1. wasm是什么
      • 1.1 chatgpt定义如下:
      • 1.2 wasm关键特性:
    • 2. wasm demo
      • 2.1 cargo 创建项目
      • 2.2 编写code
      • 2.3 安装wasm-pack
      • 2.4 编译
    • 3.1 html页面引用wasm代码(js引用)
    • 3.2 访问页面
    • 4 导入js function
      • 4.1 编写lib.rs文件,内容如下:
      • 4.2 编译
      • 4.3 html
      • 4.4 访问页面, 结果如下:

1. wasm是什么

1.1 chatgpt定义如下:

WebAssembly(WASM)是一种新兴的、低级的二进制格式,旨在为 web 提供一种高性能的执行环境。它可以与 JavaScript 互操作,使开发者能够在浏览器中运行复杂的应用程序,比如游戏、图形处理、科学计算等。

1.2 wasm关键特性:

  • 高性能:WASM 被设计为快速加载和执行,接近原生代码的性能。
  • 安全性:WASM 在一个安全的沙箱环境中运行,可以防止未授权的内存访问。
  • 跨平台:可以在任何支持的环境中运行,包括浏览器、服务器和嵌入式设备。
  • 语言支持:除了 JavaScript,许多编程语言(如
    Rust、C、C++、Go)可以编译为 WASM。

2. wasm demo

2.1 cargo 创建项目

cargo new --lib wasm-hello 

2.2 编写code

2.2.1 修改Cargo.toml文件, 内容如下:

[package]
name = "wasm-hello"
version = "0.1.0"
edition = "2021"[lib]
crate-type = ["cdylib"][dependencies]
wasm-bindgen = "0.2"

2.2.2 修改src/lib.rs文件, 内容如下:

use wasm_bindgen::prelude::*;#[wasm_bindgen]
pub fn add(a: i32, b: i32) -> i32 {return a + b;
}

2.3 安装wasm-pack

cargo install wasm-pack

2.4 编译

进入项目根目录, 然后编译

wasm-pack build --target web

命令执行成功后, 截图如下:
说明: 1. wasm_hello_bg.wasm就是输出的二进制文件
在这里插入图片描述

3.1 html页面引用wasm代码(js引用)

wasm-hello根目录下创建index.html页面, 内容如下:

<!DOCTYPE html>
<html>
<head><meta charset="UTF-8" /><title>Hello World - Rust</title><script type="module">import init from "./pkg/wasm_hello.js";const runWasm = async () => {// Instantiate our wasm moduleconst helloWorld = await init("./pkg/wasm_hello_bg.wasm");// Call the Add function export from wasm, save the resultconst addResult = helloWorld.add(24, 24);// Set the result onto the bodydocument.body.textContent = `Hello World! addResult: ${addResult}`;};runWasm();</script>
</head>
<body></body>
</html>

3.2 访问页面

截图如下:
在这里插入图片描述

4 导入js function

4.1 编写lib.rs文件,内容如下:

use wasm_bindgen::prelude::*;#[wasm_bindgen]
pub fn add(a: i32, b: i32) -> i32 {return a + b;
}// Here, we will define our external `console.log`
#[wasm_bindgen]
extern "C" {// Use `js_namespace` here to bind `console.log(..)` instead of just#[wasm_bindgen(js_namespace = console)]fn log(s: &str);
}// Export a function that will be called in JavaScript
// but call the "imported" console.log.
#[wasm_bindgen]
pub fn console_log_from_wasm() {log("This console.log is from wasm!");
}

4.2 编译

进入项目根目录, 然后编译

wasm-pack build --target web

4.3 html

<!DOCTYPE html>
<html>
<head><meta charset="UTF-8" /><title>Hello World - Rust</title><script type="module">import init from "./pkg/wasm_hello.js";const runWasm = async () => {// Instantiate our wasm moduleconst helloWorld = await init("./pkg/wasm_hello_bg.wasm");// Call the Add function export from wasm, save the resultconst addResult = helloWorld.add(24, 24);// Set the result onto the bodydocument.body.textContent = `Hello World! addResult: ${addResult} `;helloWorld.console_log_from_wasm();};runWasm();</script>
</head>
<body></body>
</html>

4.4 访问页面, 结果如下:

页面有console输出“This console.log is from wasm!”
在这里插入图片描述

http://www.yayakq.cn/news/918973/

相关文章:

  • 个人怎么做购物网站网站宣传流程
  • 西安三网合一网站建设wordpress蜜蜂采集
  • 国外网站建设素材库保存的密码变成乱码
  • 学校门户网站是什么意思网页设计论文题目大全
  • 深圳网站设计有哪些如何自己建设简单的手机网站首页
  • 网站首页没排名但内页有排名鄞州中学网站谁做的
  • 大连网页建站模板北京seo计费
  • 友情链接购买网站怎么样建设一个电影网站
  • 做的网站加载太慢怎么办上海网络推广公司兴怡
  • 网站制作公司汉狮网络公明做网站
  • 网站快速网站推广网站开发综合设计报告
  • 编织网站建设网站建设平台市场
  • 做电脑网站会很难么新余哪有做网站的公司
  • 下载了模板如何做网站微山做网站
  • 企业网站建设需要多少钱制作网页的软件有
  • 做展示型网站一份完整的市场调查方案
  • 阿里云网站建设视频网站建设开发报价方案模板下载
  • wordpress企业仿站视频教程做网站如何添加视频
  • 温州外贸网站设计广州注册公司核名在哪个网站
  • 网门网站下载地址关闭wordpress更新提示
  • 全屏网站 功能wordpress 自定排版
  • 网站安全证书出错怎么做外链网站推荐几个
  • wordpress怎么开启多站点搜狗推广怎么样
  • 天津网站建设举措上海上港微博微博
  • 网站收费标准网络规划设计师电子版教材
  • flashfxp怎么上传网站外贸公司销售渠道
  • 企业网站建设需要考虑内容新冠咳嗽吃什么药止咳效果好
  • 开发软件网站方山网站建设
  • 怎么用代码做网站火星培训机构收费明细
  • 快速网站开发怎么自己做卡盟网站