首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JS中的indexOf方法

indexOf()简介 indexOf()是js中内置的方法之一,它的功能大家都很熟悉:简单来说就是得到数据的索引,对于正则不熟练的人,是个很不错的方法。...如果查询到返回索引,反之返回-1(固定用法); 因为indexOf()在不同类型使用的时候可能有细节性的注意点; 这里我们对不同数据类型使用IndexOf的场景进行讨论(其实就是string和array...BB) var s = '12345'; console.log(s.indexOf(1)); //0 console.log(s.indexOf('1')); /...如果参数是数值它会转换为字符来进行查询然后返回索引,本质原因是什么呢,那就是 我们js底层代码中String.prototype.indexOf()使用的是==进行比较判断; Number类型的IndexOf...//2 console.log(a.indexOf('4')); //3 console.log(a.indexOf(4)); //-1 可以看到array的indexOf

5.1K40
您找到你想要的搜索结果了吗?
是的
没有找到

js indexOf 的正确用法「建议收藏」

indexOfjs中有着重要的作用,可以判断一个元素是否在数组中存在,或者判断一个字符是否在字符串中存在,如果存在返回该元素或字符第一次出现的位置的索引,不存在返回-1。...例如 var arr = [1, 2, 3]; console.log(arr.indexOf(2)); //打印结果为1 又或者 var str = "helloworld"; console.log...(str.indexOf("w")); //打印结果为5 那么,当想删除某个数组中的某个元素时,常常会这么写 var arr = [1, 2, 3]; var idx = arr.indexOf(2)...; arr.splice(idx,1); console.log(arr); 但是,indexOf真的就是好东西吗?...(arr2)); //打印结果为1 这下明白了,就是因为如果数组中存放的是对象或者数组的话,必须是该对象的引用,才可以使用indexOf得到正确的索引值。

1.4K30

JS阻塞渲染,这么多年我理解啦?

在中文社区,这么多年一直流传一个说法: JS线程负责执行JS,GUI渲染线程负责渲染,这两者是互斥的,所以JS执行时会阻塞渲染。 但随着Dev Tools使用的增多,逐渐开始怀疑以上说法。...本文会以实际案例来解释为什么JS阻塞渲染。...可以发现,具体的绘制操作是交由合成线程完成,他与JS所在线程(主线程)并不是互斥的。 JS为啥阻塞渲染 我们现在知道,JS执行与Paint任务都发生在主线程。...可以看到,有个JS执行时长达到231.88ms,超过了一帧的时间,在此期间主线程没时间执行Paint了: 总结 JS之所以阻塞渲染,是因为JS执行与「渲染相关任务」都在争夺主线程有限的资源。...当JS执行时间过长,「渲染相关任务」没时间执行了。

1.7K41

JavaScript 行间事件、提取行间事件

其中,可以看到点击按钮之后,下面div的字体变了样式。 但是,可以看到在写fnClick() 函数的时候并没有用window.onload的方法包裹着,为什么没有呢?...这是因为在点击事件的时候才会执行这个fnClick()函数,此时整体页面的内容都已经被加载了,所以不会。 但是这样写行间事件有不少缺点。...应该要将JavaScript的函数提取出来,单独在js文件中编写,方便后续外部引入,这样才好管理。 那么这种提取方式,就是叫做提取行间事件。...首先需要将HTML中的onclick="fnClick()"属性写到JavaScript代码中 因为此时fnClick()被提取之后,如果没有包裹window.onload的时候,在获取oDiv的时候就会

78850

前端定期小复盘, 每期都有小收获(二)

今天是我们的第二次复盘, 主要复盘如下: git代码管理的使用技巧 git hooks 如何在项目中优雅的使用 js操作符“~” 以及 “|” 的用法 事件委托的优缺点 ts问题分析(assignment...==”number”的类型来说,进行运算时,会尝试转化成32位整形数据,如果无法转换成整形数据,转换为NaN; 可以将~~视为parseInt的简写。...比如,在document中代理了所有button的click事件,另外的人在引用改js时,可能不知道,造成单击button触发了两个click事件。...5. ts问题分析(assignment to property of function parameter) 这个 ts 的意思是指不要直接修改函数的入参。...const func = (obj) => { const _obj = {...obj}; _obj.children = ['h5-dooring'] rerurn _obj } 这样就不会

43520

React--2: jsx

---- 这是我参与8月更文挑战的第11天,活动详情查看:8月更文挑战 1. jsx了解 全称:JavaScript XML react定义的是一种类似于 XML 的 JS 扩展语法 JS + XML...document.getElementById('root'); index.css .title{ text-align: center; background-color: aqua; } 虽然效果出来了,但是我们发现它...我们之前的写法 const VDOM = Hello React{myId} 那么,这么写是会的。如下写法才是正确的。...sdsds ) 标签必须闭合 标签首字母 若小写字母开头,则将该标签转为 html 的同名元素,若html无该标签对应的同名元素,则...return( {item}) 题外话: 【 js表达式 】与【 js 语句(代码) 】 表达式:一个表达式会产生一个值,可以放在任何需要的地方。

51230

前端js手写面试题看这篇够了

是此次传进来的数值5,m值还是上一步中的7,所以add(m+n)=add(7+5)=add(12),此时m=12,并且返回temp函数由于后面没有传入参数,等于返回的temp函数不被执行而是打印,了解JS...针对 setInterval 的这个缺点,我们可以使用 setTimeout 递归调用来模拟 setInterval,这样我们确保了只有一个事件结束了,我们才会触发下一个定时器事件,这样解决了 setInterval...如果当前元素大,那么交换位置,重复操作直到比较到最后一个元素,那么此时最后一个元素就是该数组中最大的数。...()JSON.parse(JSON.stringify(obj))是目前比较常用的深拷贝方法之一,它的原理就是利用JSON.stringify 将js对象序列化(JSON字符串),再使用JSON.parse...来反序列化(还原)js对象。

23650
领券