本文主要是介绍专业级JS考试,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、下面代码行为输出的是(C)A 12 B 10 C 5 D15
class Foo {constructor (x=5) {this.x=x;this.getX = function(){return this.x * 1 ;}}getX () {return this.x * 2 ;}
}
let foo = new Foo(4)
foo.getX = function(){return this.x * 3;
}
let bar = new Foo();
console.log(bar.getX())
2、以下关于Atomics对象的方法描述错误的是(A)
A . Atomics.load():初始化加载指定数组元素值。( 初始化加载指定位置上的值)
B. Atomics.wait():确保了一个在Int32Array数组中给定位置的值没有发生变化、仍然是给定的值时进程将会睡眠,直到被唤醒或超时。
C. Atomics.compareExchange():静态方法会在数组的值与期望相等的时候,将给定的替换值替换掉数组上的值,然后返回旧值。
D. Atomics.notify():唤醒正在等待Int32Array数组指定位置元素的线程。返回值为成功唤醒的线程数量。
3、CSS的display属性,下列说法正确的是(B)
A. display:inline与width,height,margin和float一起使用后表现为块级格式化上下文
B. display:flex可以和margin(以及所有变体)、float一起使用
C. 使用vertical-align能够垂直对齐display:block的元素
D. display:inline-block的元素会脱离文档流,所以元素会从左向右排序
4、华为js&&ts语言编程规范为什么建议尽量避免使用装饰器?
A . 装饰器是一个实验性功能,仍然处于TC39委员会的提案阶段,且目前存在已知的无法被修复的Bug
B. 复杂度过高,不建议使用
C. 多个装饰器会有冲突
D. 装饰器会修改功能内部行为
5、以下代码执行后输出的是()
const p = new Promise((resolve, reject) => {reject(Error('The Fails!'));
});
p.catch(error => console.log(error.message)).catch(error => console.log(error.message));
A. 程序退出
B. 打印一次消息
C. Unhandled PromiseRejection Warning
D. 打印两次消息
6、以下代码执行输出结果是:()
(function () {var b = (a = 3);
})();
console.log(a);
console.log(b);const a = 2;
(function () {var b = (a = 3);
})();
console.log(a); //Uncaught TypeError: Assignment to constant variable.
console.log(b);
A. 3 ReferenceError
B. ReferenceError ReferenceError
C. 3 3
D. undefined undefined
7、关于空格的使用,如下代码符合编码规范的是()
A. const x=y+5;
B. function fight () {
console.log('swooosh')
}
C. myFunc(bar,foo,baz)
D.dog.set('attr',{age:'1 year',message:'Berbese Mountain Dog'})
8、下列代码的异常处理说法正确的是()
try {new Promise(() => {throw new Error('promise error');}, 1000);
} catch (e) {console.log('catch error');
} finally {console.log('finally');
}
A. new promise 内部匿名函数执行后才会输出‘finally’
B. new promise 执行后,会抛出异常,再捕获
C. 不能捕获异常,会抛出 `Uncaught Error: promise error`
D. 可以正常捕获到异常并输出 `"catch error"`
9、以下对NodeJS项目Puppeteer的API使用。
const puppeteer = require('puppeteer');(async () => {const browser = await puppeteer.launch({executablePath: "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe",// 无界面模式headless: false,// 减慢浏览器的操作slowMo: 20,args: ['--start-maximized'],// 设置浏览器的分辨率defaultViewport: null,// 忽略https证书错误ignoreHTTPSErrors: true,});const page = await browser.newPage();await page.goto('http://3ms.huawei.com/hi/map/index.html', { waitUntil: 'networkidle0' });const search = await page.waitForXPath("//div[@class='search_bar_button']");const search_input = await page.waitForXPath("//input[@class='search_input ac_input']")await search_input.type("dongpu")await search.click()await page.waitForNavigation({waitUntil: 'networkidle0'})await page.waitFor(2000);await browser.close();
})();
10、以下代码运行后的输出结果是(A)
window.x = 0 ;var x = 1 ; //let x = 1; 结果为0
class Test {x = 2 ;constructor(){this.x = 3 ;}run () {console.log(this.x);}
}Test.prototype.run = () => {console.log(this.x) // 注意这里的箭头,如果是function() {xx}定义就是3了}
let t = new Test();
t.run();
A. 1 B. 0 C. 2 D. 3
11、下面各项对代码描述正确的是()
A. new Test();class Test {constructor() {this.name = 'xx' ;}}上面的class中声明的类可以得到提升,所以实例化没有问题B、 class Test {constructor () {console.log(2)} }Test()C、 class Test { } console.log(Test == Test.prototype.constructor)D、 class Test { } console.log(typeof Test)
这篇关于专业级JS考试的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!