Js常見簡單編程題

利用js獲取url中的參數和對應值.


  • 方法一:
//  定義foo函數,參數爲url
function foo(url) {
  var result = {}
  //  獲取參數部分
  url = url.split('?')
  //  獲取每個參數和對應值
  var map = url[1].split('&')
  //  遍歷參數列表
  for (let item of map) {
  	//  將參數和值分割
    const value = item.split('=')
    //  value[0]爲參數名,value[1]爲值.
    result[value[0]] = value[1]
  }
  return result
}
//  調用foo函數、打印
const res = foo('www.baidu.com?id=11&name= bob')
console.log(res);

每隔1s輸入數字1,2,3,4…,當數字大於10時,停止輸出

//  定義全局變量
var j = 0
//  定義一個定時器,每隔1秒輸出
var timer = setInterval(() => {
  console.log(j + 1);
  j += 1
  if (j > 9) {
    clearInterval(timer)
  }
}, 1000);

輸出今天的日期

function getDay(){
var day = new Date()
var y = day.getFullYear();
var m = day.getMonth() + 1;
var d = day.getDate()

d = d > 10 ? d : '0' + d
console.log(y + "-" + m + "-" + d);
}

判斷是否迴文字符串

  • 方法一:
function isPalindrome(param) {
  if (!param) return false
  if (typeof param !== 'string') return false
  let length = param.split('').length
  // console.log(length);
  let mid = Math.floor(length / 2)
  let l = []
  let r = []
  if (length % 2 === 0) {
  //  字符串長度爲偶數
    for (let i = 0; i < mid; i++) {
      l.push(param[i])
    }
    for (let j = mid; j < length; j++) {
      r.push(param[j])
    }
    r = r.reverse()
    // console.log(l);
    // console.log(r);
    return l.join('') === r.join('')
  } else {
  	//  字符串長度爲奇數
    for (let i = 0; i < mid; i++) {
      l.push(param[i])
    }
    for (let j = mid + 1; j < length; j++) {
      r.push(param[j])
      r = r.reverse()
    }
    // console.log(l);
    // console.log(r);
    return l.join('') === r.join('')
  }
}

//  調用
console.log(isPalindrome('12344321'));
  • 方法二:
function run(input) {
  if (typeof input !== 'string') return false;
  return input.split('').reverse().join('') === input;
}

數組的反轉

  • 方法一
var arr = [1, 2, 3, 4, 5]
for (let i = 0; i < arr.length / 2; i++) {
  const temp = arr[i]
  arr[i] = arr[arr.length - 1 - i]
  arr[arr.length - 1 - i] = temp
}
console.log(arr);
  • 方法二;
var arr = [1, 2, 3, 4, 5]
arr.reverse()
console.log(arr);
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章