大战熟女丰满人妻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官網。

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

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 亚洲五月综合网色九月色 | 久久久久久久男人的天堂 | 牛人盗摄一区二区三区视频 | 奇米在线观看视频 | 色偷偷亚洲女性天堂 | 国产亚洲男人的天堂在线观看 | 久久综合社区 | 日韩成人在线视频 | 精品日韩在线视频一区二区三区 | 欧美亚洲中日韩中文字幕在线 | 四虎影院免费 | 添bbb免费观看高清视频 | 波多野结衣视频一区 | 国产高清久久99 | 欧美日韩亚洲国产一区二区综合 | 综合久久一区二区三区 | 狠狠狠色丁香婷婷综合久久88 | 四虎免费影院4hu永久免费 | 麻豆精品久久精品色综合 | 精品欧美一区手机在线观看 | 国产在线精品香蕉综合网一区 | 国产香蕉一区二区在线观看 | 亚洲精品不卡午夜精品 | 在线观看男女爱视频网站 | 一级毛片免费在线观看网站 | 久久婷婷色综合老司机 | 在线黄色影院 | 26uuu欧美 | 久久精品六 | 亚洲欧美视屏 | 久久88香港三级台湾三级中文 | 免费一级毛片在线观看 | 国产在线91精品 | 久热99这里只有精品视频6 | 国产精品1 | 国产精品亚洲欧美 | 日本草草影院 | 亚洲欧美日韩成人一区在线 | 在线播放性xxx欧美 在线播放亚洲 | 超级碰碰青草久热国产 | 午夜在线 |