十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
var data =!type ct ct.indexof("xml")=0;
10多年的北海网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。全网营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整北海建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联公司从事“北海网站设计”,“北海网站推广”以来,每个客户项目都认真落实执行。
分解为:
!type
ct
ct.indexOf("xml") = 0
即:
(!type) (ct) ( ct.indexOf("xml") = 0 )
type是字符串,如果是空串:!type 是 true ,data对ct继续求值;如果是非空字符串:!type 是false,data结束所有求值,data = false;
逻辑与操作符。如果第一个值是false,则逻辑与的语句结果是false。即如果 !type是false,则var data = false;
type是字符串,如果是空串:!type 是 true ,对ct继续求值:
ct是个对象,
var data = (ct) ( ct.indexOf("xml") = 0 )
如果第一个操作数是对象,则返回第二个操作数。
所以,对ct.indexOf("xml") = 0 求值,如果布尔值是true,则得到 data = true;如果布尔值是false,则data = false。
(关系操作符( = =)返回布尔值。)
第二句:
data = type == "xml" || data? r.responseXML:r.responseTEXT;
划分操作符的先后顺序:
data = ((type == "xml") || data )? r.responseXML:r.responseTEXT;
((type == "xml") || data )先判断(type == "xml")相等操作符返回布尔值,如果type == "xml"则true否则是false.
所以有:(false || data)或者(true || data) ,data的值从第一句得到。
所以,如果((type == "xml") || data )是true则data = r.responseXML
如果((type == "xml") || data )是false则data = r.responseTEXT
《JavaScript高级程序设计》有详细的操作符规则说明,我看的是第2版。
通过JS自制函数:str.substring(0, 10)。
JS中,substring 方法用于提取字符串中介于两个指定下标之间的字符:
stringObject.substring(start,stop)
假设一个字符串为MozillaMozilla,去前10位,代码吗如下:
输出结果如下:
扩展资料:
substring具有的返回值:一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop减 start。
substring() 方法返回的子串包括 start 处的字符,但不包括 stop 处的字符。参数 start 与 stop 相等,那么该方法返回的就是一个空串。如果 start 比 stop 大,那么该方法在提取子串之前会先交换这两个参数。
参考资料:百度百科--substring
Javascript是一个弱类型的语言,对于属性的声明没有那么严格。
var aaa=0;
if (aaa==""){
}//此处进行比较时会对转换,会将0视为空串。
所以就会结果为True。具体可以看看JS数据类型转换部分。
/^\+{0,1}\b[0-9]{0,}$/输入空字符不匹配是因为\b没有了
/^(^\+{0,1}\b[0-9]{0,}$)*$/因为有*,所以可以匹配空字符
*等价于{0,}
?等价于{0,1}
+等价于{1,}