js字符串转DOM,DOM转字符串伪代码。

DOMParser 可以将存储在字符串中的 XML 或 HTML 源代码解析为一个 DOM Document。const CHARTSET_RE = /(?:charset|encoding)\s{0,10}=\s{0,10}['"]? {0,10}([\w-]{1,100})/i;

function charset(headers: Headers, html: string) {

let matches: any = null;

// 先从header里面取

const contentType =

headers.get('content-type') ?? headers.get('Content-Type');

if (contentType) {

matches = CHARTSET_RE.exec(contentType);

}

// 再从html里面取

if (!matches) {

matches = CHARTSET_RE.exec(html);

}

// 返回结构

let cs = '';

if (matches) {

cs = matches[1].toLowerCase();

if (cs === 'utf-8') {

cs = 'utf8';

}

}

return cs;

}

const getTitleIcon = async(url)=>{

let response;

try {

response = await fetch(url);

} catch (error) {

return '';

}

if (!response.ok) return '';

const buffer = await response.arrayBuffer();

const utf8Decoder = new TextDecoder();

const html = utf8Decoder.decode(buffer);

const cs = charset(response.headers, html);

const decoder = new TextDecoder(cs);

const content = decoder.decode(buffer);

const parser = new DOMParser()

const doc = parser.parseFromString(content, 'text/html');

let title = doc.title;

const link:any = doc.querySelector('link[rel~=shortcut]');

let icon = link? link.href:'';

return [title,icon];

}

原生js把html字符串转dom,js字符串转DOM,DOM转字符串伪代码相关推荐

  1. windows系统和linux系统可以使用相同的js代码吗_使用Sboxr自动发现和利用DOM(客户端)XSS漏洞...

    这一系列的博客文章将向你展示如何在单页或富JavaScript的应用程序上识别DOM XSS的问题.作为示例,我们将在DOM XSS playground(https://domgo.at)上解决10 ...

  2. js数组获取index_想自学JS吗?想提升JS底层原理吗?76张脑图带你彻底搞懂原生JS...

    本篇内容适用于:初学前端:及工作时间不久想回顾基础的各位伙伴: 文章主要由图片组成,看起来可能会不太方便,适合保存下来单张查看: 既然来了,就看看在走吧,总会有些收获的: 一.前端发展史 二.JS基础 ...

  3. c语言中字符串去掉逗号,JS四种方法去除字符串最后的逗号

    window.οnlοad=function() { var obj = {name: "xxx", age: 30, sex: "female"};//定义一 ...

  4. js中自定义对象、json对象、json字符串、普通js对象 --js学习那本书上的

    4.7 自定义对象 JS除了内置对象之外,还允许我们程序自己定义属于我们自己的对象,在JS中自定义对象的方式有2种:通过构造器创建对象,通过初始化器创建对象. 4.7.1 构造器创建对象(原生JS对象 ...

  5. js中自定义对象、json对象、json字符串、普通js对象

    4.7 自定义对象 JS除了内置对象之外,还允许我们程序自己定义属于我们自己的对象,在JS中自定义对象的方式有2种:通过构造器创建对象,通过初始化器创建对象. 4.7.1 构造器创建对象(原生JS对象 ...

  6. js字符串如何拼接java代码_JS如何定义用字符串拼接的变量

    今天在写js的时候碰到了难题,我又一个页面需要生成很多的变量.但是变量的名称是根据参数的不同而区分的. 例如可能需要生成 date_1,date_2,datet_3... (后面的数字是根据参数来的) ...

  7. html5 json转字符串,web前端-js小记(5)-字符串及json

    0. 对于 HTTP 协议而言,HTML.CSS.JS.JSON 的本质都是什么? 对于HTTP协议而言,html.css.js.json是符合相应语法的字符串. 用户访问页面时,浏览器根据用户的请求 ...

  8. 把JS里面的Date规范输出为“YYYY-MM-DD HH:mm:SS”的字符串

    今天做页面需要把JS里面的Date规范输出为"YYYY-MM-DD HH:mm:SS"的字符串, 把下面的代码复制到你的JS里,Date对象就可以直接调用toCommonCase( ...

  9. react 原生html 插件,纯原生JS的瀑布流插件Macy.js,前端必备插件

    这是一款非常轻量级的纯原生JS的瀑布流插件--Macy.js,如今图片和视频网站非常多,非常适应瀑布流这样的布局方式来呈现给用户. 所以,选择一款简单易用的瀑布流js插件,可以让前端工程师快速开发出漂 ...

  10. Java对象转换成JSON对象/JSON对象转换成JSON字符串/JSON字符串转换成JS对象

    文章目录 后端部分 前端部分 后端部分 Option op = new Option("海淀","hd");//java对象转换json对象 JSONObjec ...

最新文章

  1. 动态代理--cglib
  2. [SQL Server]无法创建 SSIS 运行时对象,请验证 DTS.dll 是否可用及是否已注册
  3. HDOJ 5373 The shortest problem 【数论】
  4. 把linux制作成内存系统,把内存当硬盘,提速你的linux系统
  5. 电脑吃鸡按键详细_一秒八连击的即装即用吃鸡神器-飞智蜂刺手游按键体验
  6. oracle数据库备份和还原
  7. 20165223《网络对抗技术》Exp3 免杀原理与实践
  8. 怎样提高自己的Java编程能力?
  9. Windows自带md5校验工具使用说明
  10. qq红包裂变式引流?QQ群红包裂变吸粉引流
  11. 一己之力,不过举鼎,奈何撼天;一世芳华,不余百年,怎易如愿?
  12. html制作晚安,晚安计划.html
  13. 手机APP如何访问局域网服务器
  14. S2ANet(Align Deep Features for Oriented Object Detection)解读
  15. LaTeX给表格的一整行加删除线(横线)
  16. 联想服务器开机滴一下不显示,电脑开机没有滴的一声显示器不亮怎么办 电脑开机故障解决方法【图文】...
  17. Java 生成Word文档 — 简单示例
  18. 牛牛的Link Power II
  19. Arduino基础之十一 74HC595的使用------控制1位数码管
  20. 信号的反射(振铃、台阶、回勾、尖峰毛刺)

热门文章

  1. 老板谈上4休3工作制1个月后效果:不建议新公司模仿
  2. redis setnx java_一步步实现单机redis的分布式锁(setnx)
  3. 名悦集团:贷款买车和全款买车选哪个好,这笔账怎么算
  4. Android 获取设备开机时间
  5. 分享一个使用安卓手机平板做windows电脑第二显示屏软件spacedesk
  6. android炫酷效果集合
  7. DataReader与DataSet,DataGrid与DataList
  8. python-pandas中pd.to_excel()一个excel文件保存多个工作表。
  9. “2017CIO时代走进系列:走进蓝月亮”活动圆满结束
  10. linux 动态连接