十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
JS判断字符串包含的方法具体如下:
成都创新互联-企业级云服务器提供商,为用户提供云服务器、CDN、云安全服务、重庆服务器托管、服务器租用、高防服务器租用等全方位云服务与各行业解决方案,帮助企业及个人极速备案,轻松上云,安全无忧。
1. 例子:
var tempStr = "tempText" ;
var bool = tempStr.indexOf("Texxt");
//返回大于等于0的整数值,若不包含"Text"则返回"-1。
if(bool0){
document.write("包含字符串");
}else{
document.write("不包含字符串");
}
2. indexOf用法:
strObj.indexOf(subString[, startIndex])
JavaScript中indexOf函数方法返回一个整数值,指出 String 对象内子字符串的开始位置。如果没有找到子字符串, 则返回 -1。如果 startindex 是负数,则 startindex 被当作零。如果它比最大的字符位置索引还大,则它被当作最大的可能索引。
参数:
strObj : 必选项,String 对象或文字。
subString :必选项,要在 String 对象中查找的子字符串。
starIndex :可选项,该整数值指出在 String 对象内开始查找的索引。如果省略,则从字符串的开始处查找;
如果 startindex 是负数,则 startindex 被当作零。如果它比最大的字符位置索引还大,则它被当作最大的可能索引。
3. 与lastIndexOf的区别:
lastIndexOf() 方法则是从字符串的结尾开始检索子串。
直接判断:
if(对象){
alert("对象存在");
}else{
alert("对象不存在");
}
在调用后端接口时,由于后端接口的不规范统一,接口最外层在没有数据时返回的是空数组(其实更想要的是空json对象),而在有数据时返回的是json对象,所以在接收到后端返回的接口时就需要首先判断返回的数据是对象还是数组,这里提供一些方法
方法一:
//判断是否为数组
function
isArray(obj)
{
return
obj
instanceof
Array;
}
//判断是否为对象
function
isObject(obj)
{
return
obj
instanceof
Object;
}
方法二:
//判断是否是数组
function
isArray(obj)
{
return
Object.prototype.toString.call(obj)
==
'[object
Array]';
}
//判断是否是对象
function
isObject(obj)
{
return
Object.prototype.toString.call(obj)
==
'[object
Object]';
}
总结
以上所述是小编给大家介绍的JavaScript判断对象和数组的两种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
您可能感兴趣的文章:JS判断是否为JSON对象及是否存在某字段的方法(推荐)javascript判断一个变量是数组还是对象JS判断两个数组或对象是否相同的方法示例JavaScript
判断对象中是否有某属性的常用方法通过JS深度判断两个对象字段相同
通过下面方法进行检测,如果是数组,则返回true,如果不是数组,则返回false
function isArray(obj) {
return Object.prototype.toString.call(obj) === '[object Array]';
}
测试:
var a1 = [1,2,3];
var a2=new Array("a","b");
var a3={a:1};
alert(isArray(a1));//true
alert(isArray(a2));//true
alert(isArray(a3));//false
补充:
根据ECMA-262规范定义
1、Object.prototype.toString( ) When the toString method is called, the following steps are taken:
Get the [[Class]] property of this object.
Compute a string value by concatenating the three strings “[object “, Result (1), and “]”.
Return Result (2)
2、new Array([ item0[, item1 [,…]]])
The [[Class]] property of the newly constructed object is set to “Array”.
因此检测对象是否是[object Array]就能判断是否是数组,call改变toString的this引用为待检测的对象,返回此对象的字符串表示,然后对比此字符串是否是'[object Array]',以判断其是否是Array的实例。
支持:你可以执行JS,JS代码正常写就行。需要通知后端的话用ajax通知就行了;
不支持:你的JS执行不了,没什么主动能做的事。需要通知后端的话,没收到ajax通知就说明不支持。这时网页上可以通过noscript标签显示信息。例:
noscriptp class="noscript"网站的正常使用需要Javascript,请开启浏览器的Javascript脚本支持/p/noscript
noscript标签是一个相当古老的标签,其被引入的最初目的是帮助老旧浏览器的平滑升级更替,因为早期的浏览器并不能支持 JavaScript。noscript 标签在不支持JavaScript 的浏览器中显示替代的内容。这个元素可以包含任何 HTML 元素。这个标签的用法也非常简单:
noscript
p本页面需要浏览器支持(启用)JavaScript/p/noscript
不过到了现在,浏览器不支持 Javascript 的事情应该已经不会出现了,但是用户也可能因为各种原因而禁用了 Javascript。如节省流量,延长电池使用时间,或者是不希望自己的隐私被各类统计/追踪脚本泄露...
。也有相当一部分用户安装了类似NoScript的浏览器扩展来禁止浏览器运行 Javascript。
网站虽然不能强制用户启用浏览器的 Javascript,但是可以提示用户的浏览器已经禁用脚本,来达到更好的用户体验。