js学习note9 取字符串中间值and找出数组重复出现的值

一早遇到球迷司机 ,道路施工3位好友绕路出行的提醒,周四愉快耶٩(๑❛ᴗ❛๑)۶


球迷司机

第1题:找出一个字符串的中间值,比如 '123' 返回2,'1234' 返回23。

let str = '1234'
function middle (str) {
  let newStr = ''
  num = str.length % 2
  // 判断是否能整除
  if (num == 0) {
    // ok的话截取中间2位,substring(start, end),有头无尾
    newStr = str.substring((str.length/2)-1, (str.length/2)+1)
  } else { 
    // 不ok的话截取中间1位,charAt(index)٩(๑❛ᴗ❛๑)۶٩(๑❛ᴗ❛๑)۶
    newStr = str.substring(str.length/2).charAt(0)
  }
  console.log(newStr)
}
middle (str)

js中substring()、substr()、slice()的区别(上栗子):
1、stringObject.substring(start,stop),从 start 下标开始到stop(不包含stop)结束,start和stop都是非负整数,不接受负的参数。
注意:如果参数 start 与 stop 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。如果 start 比 stop 大,那么该方法在提取子串之前会先交换这两个参数。
2、stringObject.substr(start,length),从 start 下标开始的指定数目的字符,length必须是数值,start可接受负的参数。
3、stringObject.slice(start,end),从 start 下标开始到end(不包括 end)结束,接受负的参数。end如果该参数是负数,那么它规定的是从字符串的尾部开始算起的位置。


上栗子

参数出现负数

我最胖~

第2题:写一个函数 找出数组重复出现的值,比如[1, 2, 4, 4, 3, 3, 1, 5, 3] 返回[1, 3, 4]。

var arr = [1,2,4,4,3,3,1,5,3]
function repeatValue (arr) {
  let newArr = []
  for (let i=0; i

indexOf()方法可返回某个指定的字符串值在字符串中首次出现的位置(从前到后),
lastIndexOf()方法可返回一个指定的字符串值最后出现的位置(从后到前)。


indexOf,lastIndexOf

2018/05/29题

你可能感兴趣的:(js学习note9 取字符串中间值and找出数组重复出现的值)