2023年8月1日发(作者:)
Javascript,ES6笔试题1. 下⾯程序的输出?const promise = new Promise((resolve, reject) => { resolve('success1'); reject('error'); resolve('success2');});( (res) => { ('then:', res);} ).catch( (err) => { ('catch:', err);} );resolve后⾯的都不执⾏了,状态不能改变要么resolve, 要么reject, ⽽且只执⾏1次所以输出 then: success12. 如果想在⼿机端的H5页⾯上做⼀条1px的细线,有哪些⽅法?
媒体查询应该怎么写? 缩放0.5之后,宽度也缩⼩了0.5dpr = 2, 对于iPhone 63. 写⼀个函数loadImage(url),⽤于加载位于url的图⽚。返回Promise。当加载成功时,resolve,参数为图⽚的⾯积(若宽=15,⾼=10则⾯积为150)。当加载失败时,reject,参数为url即可。提⽰:在图⽚的onload和onerror事件上包装,图⽚的宽度和⾼度属性为naturalWidth和naturalHeight。调⽤loadImage函数的⽅式loadImage('/images/index/tkpc_').then(area => (图⽚的⾯积是${area})).catch(url => (⽆法加载位于${url}的图⽚))答案:function loadImage(url) { var image = new Image(); return new Promise((resolve, reject) => { = url; Child(image); = function() { let area = lWidth * lHeight; resolve(area); }; r = function() { reject(); };});}loadImage("/image?id=-7312956&product=adpublish&w=720&h=480&sc=0&rm=2&gsb=0&gsbd=60") .then(area => (`图⽚的⾯积是${area}`)) .catch(url => (`⽆法加载位于${url}的图⽚`))4. 监听touchmove/mousemove/resize/scroll等短时间内连续多次触发的事件时,⽤什么办法改进性能?var throttle = function(fn, interval) { var self = fn, timer, firstTime = true;
return function() { var args = arguments, me = this; if (firstTime) { (me, args); return firstTime = false; } if (timer) { return false; } timer = setTimeout(function() { clearTimeout(timer); timer = 0; (me, args); }, interval || 500 ); };};// Usage:ze = throttle(function() { (1);}, 3000);5. f循环能⽤在以下哪些变量上?多选A. [1, 2, 3]B. electorAll('A')C. {a: 1, b: 2, c: 3}D. new Set([1, 2, 3])E. argumentsF. 'TAIKANG'6. 以下代码输出是什么? let, var区别function f() { for (var i = 0; i <5; i++) { setTimeout(function timer(){ (i); }, 1000) }}f();输出5个5 (function(i) { /* */})(i)var hoist, let先声明后使⽤let 块级 作⽤域var 函数级 作⽤域7. 写出媒体查询的CSS代码:针对宽度<=400px,且宽度⼩于⾼度的设备应⽤CSS,要怎么写?
2023年8月1日发(作者:)
Javascript,ES6笔试题1. 下⾯程序的输出?const promise = new Promise((resolve, reject) => { resolve('success1'); reject('error'); resolve('success2');});( (res) => { ('then:', res);} ).catch( (err) => { ('catch:', err);} );resolve后⾯的都不执⾏了,状态不能改变要么resolve, 要么reject, ⽽且只执⾏1次所以输出 then: success12. 如果想在⼿机端的H5页⾯上做⼀条1px的细线,有哪些⽅法?
媒体查询应该怎么写? 缩放0.5之后,宽度也缩⼩了0.5dpr = 2, 对于iPhone 63. 写⼀个函数loadImage(url),⽤于加载位于url的图⽚。返回Promise。当加载成功时,resolve,参数为图⽚的⾯积(若宽=15,⾼=10则⾯积为150)。当加载失败时,reject,参数为url即可。提⽰:在图⽚的onload和onerror事件上包装,图⽚的宽度和⾼度属性为naturalWidth和naturalHeight。调⽤loadImage函数的⽅式loadImage('/images/index/tkpc_').then(area => (图⽚的⾯积是${area})).catch(url => (⽆法加载位于${url}的图⽚))答案:function loadImage(url) { var image = new Image(); return new Promise((resolve, reject) => { = url; Child(image); = function() { let area = lWidth * lHeight; resolve(area); }; r = function() { reject(); };});}loadImage("/image?id=-7312956&product=adpublish&w=720&h=480&sc=0&rm=2&gsb=0&gsbd=60") .then(area => (`图⽚的⾯积是${area}`)) .catch(url => (`⽆法加载位于${url}的图⽚`))4. 监听touchmove/mousemove/resize/scroll等短时间内连续多次触发的事件时,⽤什么办法改进性能?var throttle = function(fn, interval) { var self = fn, timer, firstTime = true;
return function() { var args = arguments, me = this; if (firstTime) { (me, args); return firstTime = false; } if (timer) { return false; } timer = setTimeout(function() { clearTimeout(timer); timer = 0; (me, args); }, interval || 500 ); };};// Usage:ze = throttle(function() { (1);}, 3000);5. f循环能⽤在以下哪些变量上?多选A. [1, 2, 3]B. electorAll('A')C. {a: 1, b: 2, c: 3}D. new Set([1, 2, 3])E. argumentsF. 'TAIKANG'6. 以下代码输出是什么? let, var区别function f() { for (var i = 0; i <5; i++) { setTimeout(function timer(){ (i); }, 1000) }}f();输出5个5 (function(i) { /* */})(i)var hoist, let先声明后使⽤let 块级 作⽤域var 函数级 作⽤域7. 写出媒体查询的CSS代码:针对宽度<=400px,且宽度⼩于⾼度的设备应⽤CSS,要怎么写?
发布评论