大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學(xué)習(xí)攻略 職業(yè)指南 互聯(lián)網(wǎng)的Js中級面試題及技巧

互聯(lián)網(wǎng)的Js中級面試題及技巧

更新時(shí)間:2022-12-22 14:43:52 來源:動力節(jié)點(diǎn) 瀏覽1407次

如果大家想要成為成熟的程序員,那么Js就一定是需要掌握的,因?yàn)樵诠ぷ髦写蠹译y免需要解決一些較為復(fù)雜的代碼問題,成為一定經(jīng)驗(yàn)的程序員,就更應(yīng)該要懂得利用Js如何高效的解決問題:

js中級面試題

1.在數(shù)組或?qū)ο笾刑崛≈?/strong>

因?yàn)閿?shù)組和對象這樣的數(shù)據(jù)結(jié)構(gòu)在js開發(fā)中被大量的應(yīng)用,所以有中級程序員應(yīng)該熟練掌握對數(shù)組和對象的處理技巧。

let input = [
  { name: "John", age: 21, city: "New York" },
  { name: "Mike", age: 28, city: "Moscow" },
  { name: "Danny", age: 30, city: "London" },
  { name: "Lisa", age: 26, city: "Paris" },
  { name: "Sophie", age: 19, city: "Berlin" },
];

本題要求提取數(shù)組中的每個對象的name屬性存儲到一個數(shù)組中,結(jié)果應(yīng)該如下:

["John", "Mike", "Danny", "Lisa", "Sophie"];

一般的解法是,定義一個空數(shù)組,遍歷數(shù)組,在每次循環(huán)中使用內(nèi)置的push()方法取出并存儲對象的name屬性。

let input = [
  { name: "John", age: 21, city: "New York" },
  { name: "Mike", age: 28, city: "Moscow" },
  { name: "Danny", age: 30, city: "London" },
  { name: "Lisa", age: 26, city: "Paris" },
  { name: "Sophie", age: 19, city: "Berlin" },
];

const extractValues = (arr, property) => {
  let output = [];

  for (let i = 0; i < arr.length; i++) {
    output.push(arr[i][property]);
  }

  return output;
};

let result = extractValues(input, "name");
console.log(result);

上面的代碼雖然可以解決問題,但是有一個問題,中級程序員應(yīng)該使用ES6語法而不是ES5語法解決問題,所以讓我們使用ES6的map函數(shù)代替循環(huán)。

const extractValues = (arr, property) => {
  let output = arr.map((element) => element[property]);

  return output;
};

所以本題考察的是如何使用ES6語法處理數(shù)組和對象。

2.將字符串向左旋轉(zhuǎn) k 次

和數(shù)字類型一樣,字符串是js中最常用的數(shù)據(jù)類型之一。中級js程序員應(yīng)該對內(nèi)置的字符串函數(shù)比較熟練。 給定一個字符串和數(shù)字。

let string = "javascript"
let n = 2

按照上面的要求,給定的字符串應(yīng)該向左旋轉(zhuǎn)兩次。 以下是期望得到結(jié)果。

"vascriptja"

解答該題的最簡單方法是使用內(nèi)置的 substring() 函數(shù)。

function rotateLeft(string, n) {
  let part1 = string.substring(n, string.length);
  let part2 = string.substring(0, n);

  let output = part1 + part2;
  return output;
}

let string = "javascript";
let n = 2;

console.log(rotateLeft(string, n));

當(dāng) n = 2 時(shí),前兩個字符“ja” 被刪除并添加到末尾,這會將字符串向左旋轉(zhuǎn)兩次。

因此,首先提取除前兩個字符以外的子串(part1),然后使用相同的函數(shù)提取剩余的兩個字符(part2)作為子串。 最后,連接兩個子串。

3.計(jì)算兩個日期之間的天數(shù)

初學(xué)者通常沒有任何日期工作經(jīng)驗(yàn),但中級程序員必須處理過日期,因?yàn)樘幚砣掌谑荍avaScript開發(fā)的常見工作。

給定兩個DD/MM/YYYY 格式的日期。

let date1 = "08/10/2021";
let date2 = "09/11/2021"

要解決這一問題,需要正確使用內(nèi)置日期函數(shù)。

const findDays = (date1, date2) => {
  let d1 = new Date(date1);
  let d2 = new Date(date2);

  let difference = d2.getTime() - d1.getTime();

  let output = difference / (1000 * 3600 * 24);

  return Math.floor(output);
};

let date1 = "11/01/2021";
 let d1 = new Date(date1);
 console.log(d1.getTime(); 
let date2 = "11/03/2021";

console.log(findDays(date1, date2));

這里,首先轉(zhuǎn)換日期的格式,然后使用 getTime()方法獲取日期的時(shí)間戳。

以上就是“互聯(lián)網(wǎng)的Js中級面試題及技巧”,你能回答上來嗎?如果想要了解更多的Java面試題相關(guān)內(nèi)容,可以關(guān)注動力節(jié)點(diǎn)Java官網(wǎng)。

提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)

主站蜘蛛池模板: 97免费在线观看 | 欧美日韩视频精品一区二区 | 日韩精品123 | 亚洲欧洲国产精品久久 | 久久综合噜噜激激的五月天 | 亚洲人成网i8禁止 | 免费福利在线 | 欧美另类亚洲 | 日本又黄又爽又色的免费视频 | 欧美第一页在线观看 | 免费久久 | 欧美激情一区二区三区中文字幕 | 女女同免费播放毛片 | 日韩午夜伦 | 欧美成人xx免费视频 | 四虎影视成人永久在线观看 | 日韩毛片免费在线观看 | 999资源| 欧美另类69xxxxx 视频 | 日韩欧美印度一级毛片 | 色综合久久综合 | 国产精品99久久久久久www | 亚洲成色综合一区二区三区四区 | 亚洲国产精品久久婷婷 | 九九视频在线观看视频23 | 久久精品免视看国产成人2021 | 精品国产品香蕉在线观看 | 国产亚洲第一伦理第一区 | 亚洲国产精品高清在线一区 | 久草观看视频 | 亚洲精品美女久久久久网站 | 99最新网址 | 久久精品国产亚洲网址 | 日本高清免费视频不卡a | 亚洲h片 | 免费精品一区二区三区在线观看 | www.久久.com| 午夜视频在线免费看 | 99视频九九精品视频在线观看 | 国产一区二区三区视频 | 日韩久久精品 |