js对象属性两种调用bug

jsobj.url_3[0]=url_3[1];这就错误jsobj.url_3[0]红色看成一个整体的0的属性,这就错了

TypeError: Cannot set property '0' of undefined

只能用[],jsobj[url_3[0]]

indexOf和lastIndexOf方法区别

indexof从0开始,如果没有找到返回-1,严格区分大小写,返回索引

lastIndexOf  如果只有一个查询值,不管从后往前还是从前往后找,索引值都一样,区别就在于有好几个查询值,不管从前往后找还是从后往前找,都是找到第一个就不不找了,那么这时的索引值就不一样了

indexOf 和  lastIndexOf 是什么?
  indexOf 和 lastIndexOf 都是索引文件
  indexOf 是查某个指定的字符串在字符串首次出现的位置(索引值) (也就是从前往后查)
  eg:


  lastIndexOf 是从右向左查某个指定的字符串在字符串中最后一次出现的位置(也就是从后往前查)
eg:


注意:
  那么问题来了 两个不是一前一后相反方向还是查么?怎么他们两个返回的索引值相同呢?
  because:lastIndexOf()方法虽然是从后往前搜索,但返回的位置是从前开始数数和计算的,所以结果和indexOf()方法返回的相同
注意二:
  那如果数组(字符串)中出现相同的valuesearch呢?
  (这个时候我的数组有两个7);
  
   结果是不是大跌眼镜?  
   这个时候两个返回的索引值就不同了
   because: 前面已经说了indexOf是从前向后查  而lastIndexOf是从后向前查   但是二者返回索引都是从前开始数数和计算的
总结:
   当数组(字符串)中所要查询的数(字符串/字符)在字符串(数组)中只出现一次的时候 二者返回的索引值相同
   当数组(字符串)中所要查询的数(字符串/字符)在字符串(数组)中出现两次及以上的时候  
      indexOf  返回的是 valuesearch 第一次在数组(字符串)出现的位置(从左往右)
      lastIndexOf 返回的是 valuesearch 最后一次在数组(字符串)出现的位置(从左往右)《只不过查询的方向不同而已》
小言:
  在学习这两个的时候 一定别把 两个的查询方向和返回的索引值的关系分清楚 不要混为一谈
 

 root节点的顶层对象是一个语言的原生对象,没有原型,就像html标签就是树结构的顶层对象

原文地址:https://www.cnblogs.com/fpcbk/p/10634316.html