发布时间:2026-10-03 04:39:18 浏览次数:4
该题是百度前端技术学院(IFE)啊2017年的提前批笔试题,主要考察前端JavaScript编程能力。该题面分为多个部分,主要要求在限制条件下,用JavaScript实现代码功能。
该题面共分为5个部分,包括字符串、数组、对象、ES6、正则表达式等内容。
针对每个部分的题目要求,需要编写符合要求的JavaScript代码,并在浏览器的控制台输出结果。
下面分别对每个部分的题目进行解析:
function toCamel(str) { return str.replace(/_+(.)/g, function(match, p1) { return p1.toUpperCase(); });}console.log(toCamel("hello_world"));function trim(str) { return str.replace(/[0-9\s]/g, "");}console.log(trim(" 12 3 4qw er ty"));function unique(arr) { var obj = {}, newArr = [], len = arr.length; for (var i = 0; i < len; i++) { if (!obj[arr[i]]) { obj[arr[i]] = true; newArr.push(arr[i]); } } return newArr;}console.log(unique([1,2,3,3,2,4]));function bubbleSort(arr) { var len = arr.length; for (var i = 0; i < len; i++) { for (var j = 0; j < len - 1 - i; j++) { if (arr[j] > arr[j+1]) { var temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; } } } return arr;}console.log(bubbleSort([3,2,1,5,4]));function cloneObject(obj) { var newObj = {}; for (var key in obj) { if (typeof obj[key] === "object") { newObj[key] = cloneObject(obj[key]); } else { newObj[key] = obj[key]; } } return newObj;}console.log(cloneObject({a: 1, b: {c: 2}}));<p id="app"></p>var obj = { a: 1, b: 2};updateView(obj);function updateView(obj) { var app = document.getElementById("app"); app.innerHTML = "<p>" + obj.a + "</p><p>" + obj.b + "</p>"; Object.defineProperty(obj, "a", { get: function() { return this._a; }, set: function(value) { this._a = value; app.children[0].innerText = value; } }); Object.defineProperty(obj, "b", { get: function() { return this._b; }, set: function(value) { this._b = value; app.children[1].innerText = value; } });}const getMax = arr => Math.max(...arr);console.log(getMax([1,3,5,7,9]));function sortNums(arr) { let tempArr = [...arr]; return tempArr.sort(function(a, b) { return a - b });}function isEmail(str) { var pattern = /^([\w-\.]+)@([\w-]+\.)+[\w-]{2,4}$/; return pattern.test(str);}console.log(isEmail("example@123.com"));function isMobilePhone(str) { var pattern = /^1[0-9]{10}$/; return pattern.test(str);}console.log(isMobilePhone("13800138000"));该题是一道比较全面的前端JavaScript编程练习题,覆盖了字符串、数组、对象、ES6、正则表达式等各个方面的知识点。通过对该题的思考和解答,可以有效的提升自己的前端编程能力。