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

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 職業指南 互聯網的Js中級面試題及技巧

互聯網的Js中級面試題及技巧

更新時間:2022-12-22 14:43:52 來源:動力節點 瀏覽1207次

如果大家想要成為成熟的程序員,那么Js就一定是需要掌握的,因為在工作中大家難免需要解決一些較為復雜的代碼問題,成為一定經驗的程序員,就更應該要懂得利用Js如何高效的解決問題:

js中級面試題

1.在數組或對象中提取值

因為數組和對象這樣的數據結構在js開發中被大量的應用,所以有中級程序員應該熟練掌握對數組和對象的處理技巧。

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" },
];

本題要求提取數組中的每個對象的name屬性存儲到一個數組中,結果應該如下:

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

一般的解法是,定義一個空數組,遍歷數組,在每次循環中使用內置的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);

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

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

  return output;
};

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

2.將字符串向左旋轉 k 次

和數字類型一樣,字符串是js中最常用的數據類型之一。中級js程序員應該對內置的字符串函數比較熟練。 給定一個字符串和數字。

let string = "javascript"
let n = 2

按照上面的要求,給定的字符串應該向左旋轉兩次。 以下是期望得到結果。

"vascriptja"

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

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));

當 n = 2 時,前兩個字符“ja” 被刪除并添加到末尾,這會將字符串向左旋轉兩次。

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

3.計算兩個日期之間的天數

初學者通常沒有任何日期工作經驗,但中級程序員必須處理過日期,因為處理日期是JavaScript開發的常見工作。

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

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

要解決這一問題,需要正確使用內置日期函數。

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));

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

以上就是“互聯網的Js中級面試題及技巧”,你能回答上來嗎?如果想要了解更多的Java面試題相關內容,可以關注動力節點Java官網。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 91av久久| 四虎成人在线视频 | 亚洲欧美一级久久精品 | 国产亚洲一区二区麻豆 | 亚洲欧美日韩一区 | 国产成人精品久久免费动漫 | 成人看免费一级毛片 | 成人亚洲视频在线观看 | 一本大道香蕉中文在线高清 | 成人免费大片a毛片 | 成人国产一区二区三区 | 热伊人99re久久精品最新地 | 国产成人亚洲精品2020 | 亚洲免费高清视频 | 久久欧美精品欧美久久欧美 | 天天操天天干天天舔 | 国产成人一区二区三区高清 | 在线黄色影院 | 草久在线视频 | 成人凹凸短视频在线观看 | 思思久久99热这里只有精品66 | 一级毛片特黄久久免费看 | 国产3区 | 中文字幕一区二区三区精彩视频 | 日本一区二区三区久久 | 亚洲人成在线观看 | 四虎影视免费观看 | 看毛片视频 | 天天干在线观看 | 毛片爱爱| 在线观看亚洲精品国产 | 天天射天天干天天操 | 色丁香在线观看 | 一本久道综合久久精品 | 麻豆亚洲一区 | 99久久精品费精品国产 | 精品久久久久久亚洲精品 | 欧美日韩在大午夜爽爽影院 | 中文字幕一区二区三区有限公司 | 狠狠色成人综合首页 | 日批视频网址免费观看 |