96SEO 2026-02-19 09:00 0
。

对于开发人员来说#xff0c;我们把promise当作一个普通的对象即可#xff0c;使用它可以用来封装一个异步操作并可以获取其成功/失败…Promise是什么
官方的定义是Promise是ES6新推出的用于进行异步编程的解决方案旧方案是单纯使用回调函数来解决的。
对于开发人员来说我们把promise当作一个普通的对象即可使用它可以用来封装一个异步操作并可以获取其成功/失败的结果值。
promise最大的好处在于能够解决回调地狱的问题。
pending变为resolvedpending变为rejected
注意promise有且只有这2种状态改变并且一个promise对象只能改变一次无论变为成功还是失败都会有一个结果值。
charsetUTF-8title基本使用/titlelink
hrefhttps://cdn.bootcss.com/twitter-bootstrap/3.3.7/css/bootstrap.min.css
idbtn点击抽奖/button/divscript//生成随机数function
document.querySelector(#btn);//绑定单击事件btn.addEventListener(click,
function(){//1.创建promise对象(初始状态为pending状态)指定执行器函数const
Promise((resolve,rejected){//2.在执行器函数种启动异步任务setTimeout((){let
rand(1,100)if(n30){resolve(恭喜)//3.如果成功调用resolve()指定成功的valuepromise变为resolved状态}else{rejected(再接再厉)//4.失败调用rejected()指定失败的reasonpromise变为rejected状态}})})console.log()//在setTimeout之后执行因为setTimeout是在promise内部同步调用的//5.promise指定成功或失败的回调函数来获取成功的value或失败的reasonp.then((data){//成功的回调函数onResolved得到成功的dataconsole.log(data)alert(data)},(reason){//失败的回调函数onRejected得到失败的reasonalert(reason)console.log(reason)})});/script
{fs.readFile(./desktop/content.txt,
{console.log(data.toString())//
alert(reason)console.log(reason)
XMLHttpRequest();xhr.responseType
url);xhr.send();//处理结果xhr.onreadystatechange
300){//成功的结果resolve(xhr.response);}else{reject(xhr.status);}}}});}sendAJAX(https://xxxx).then(value
{console.warn(reason);});/script使用util.promisify方法进行promise风格转化
传入一个以(err,valve){}回调函数作为最后一个参数的函数并返回一个返回promise的版本。
这句话有点拗口我们使用案例来说明一下
util.promisify(fs.readFile)//readFile函数最后一个参数是回调函数
fsPromise(./desktop/content.txt).then((data)
fs.readFile(./desktop/content.txt,
excutor函数执行器(resolve,reject){}resolve函数内部定义成功时我们调用的函数reject函数内部定义失败时我们调用的函数
注意executor会在promise的内部立即同步调用异步操作在执行器中执行
Promise.resolve(521);//如果传入的参数为
resolve(OK);reject(Error);}));//
console.log(p2);p2.catch(reason
{console.log(reason);})/scriptscript//
{resolve(OK);}));console.log(p3);/scriptscriptlet
p3]);console.log(result);/scriptscriptlet
p3]);console.log(result);/scriptPromise的关键问题
initial-scale1.0titlePromise关键问题
{console.log(111);//有且只有一个方式return
{console.log(222);}).then(value
{console.log(333);}).catch(reason
{console.warn(reason);});/script
await必须写在async函数中但async函数中可以没有await如果await的promise失败了就会抛出异常需要通过try…catch捕获处理
util.promisify(fs.readFile);//回调函数的方式
mineReadFile(./resource/1x.html);let
mineReadFile(./resource/2.html);let
mineReadFile(./resource/3.html);console.log(data1
data3);}catch(e){console.log(e.code);}
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback