substr(start, length) : 截取从start索引开始的字符,长度为length的字符串 substring(start, end) : 截取从start索引开始的字符,以end索引结束的字符(有一点比较重要的是,start和end的参数是可以互换的,小的在前面,大的在后面) slice(start, end): 截取从start开始,end结束的字符, 返回一个新的字符串 (slice() 提取的新字符串包括start但不包括 end.) let str = 'abcdefg…
在 JavaScript 中,对于字符串的操作有 substring, substr, slice 等好多个内置函数,这里给大家推荐一篇介绍 substring, substr, slice 三者区别的文章. Extracting a portion of a string is a fairly well understood practice. With JavaScript, there are three different built-in functions which can pe…
JavaScript中:表达式和语句的区别 Javascript语言精粹:表达式是由运算符构成,并运算产生结果的语法结构.程序是由语句构成,语句则是由“:(分号)”分隔的句子或命令.如果在表达式后面加上一个“:”分隔符,这就被称为“表达式语句”.它表明“只有表达式,而没有其他语法元素的语句” 原文:http://www.2ality.com/2012/09/expressions-vs-statements.html 本文要讲的是JavaScript中非常重要的两个知识点:表达式(express…
1.api说明 (1)substring str.substring(indexStart[, indexEnd]) substring 提取从 indexStart 到 indexEnd(不包括)之间的字符.特别地: 如果 indexStart 等于 indexEnd,substring 返回一个空字符串. 如果省略 indexEnd,substring 提取字符一直到字符串末尾. 如果任一参数小于 0 或为 NaN,则被当作 0. 如果任一参数大于 stringName.length,则被当…
1. substring(start,end)  返回指定索引区间的字串,不改变原字符串 start 必需,开始位置的索引,一个非负的整数 end  可选,结束位置的索引(不包括其本身),如果未设置,则直接取到字符串的结尾 举个栗子: let str = 'my name is LQW'; console.log(str.substring(2,4)); console.log(str.substring(9));console.log(str); 结果:  n s LQWmy name is…
substr with different arguments passed in: str.substring(startNum,stopNum ); str.slice(startNum,stopNum ); str.substr(startNum,length ); substring vs slice start = stop ,return ‘ ‘; the same. start or stop bigger than str.length, it will make the big…
大多数人系统学习过的程序设计语言,在这些语言的学习过程中最早学到的几个要点之一就是值类型和引用类型的区别.下面我们来看一下在 JavaScript 中基本数据类型(Primitive Types)和引用类型(Reference Types)的区别.. 基本类型和引用类型 ECMAScript包含两个不同类型的值:基本类型值和引用类型值.基本类型值指的是简单的数据段:引用类型值指由多个值构成的对象.当我们把变量赋值给一个变量时,解析器首先要做的就是确认这个值是基本类型值还是引用类型值. 常见的五种…
在javascript中,window对象有两个主要的定时方法,分别是setTimeout 和 setInterval,其语法基本上相同,但是完成的功能取有区别. setTimeout方法是定时程序,就是在什么时间以后干什么. setInterval方法则是表示间隔一定时间反复执行某操作. 如果用setTimeout实现setInerval的功能,就需要在执行的程序中再定时调用自己才行.如果要清除计数器需要 根据使用的方法不同,调用不同的清除方法:例如:t=setTimeout('northsn…
property 和 attribute非常容易混淆,两个单词的中文翻译也都非常相近(property:属性,attribute:特性),但实际上,二者是不同的东西,属于不同的范畴. property是DOM中的属性,是JavaScript里的对象: attribute是HTML标签上的特性,它的值只能够是字符串: 基于JavaScript分析property 和 attribute html中有这样一段代码: <input id="in_1" value="1&quo…
JavaScript 中 typeof 和 instanceof 常用来判断一个变量是否为空,或者是什么类型的.但它们之间还是有区别的: typeof typeof 是一个一元运算,放在一个运算数之前,运算数可以是任意类型. 它返回值是一个字符串,该字符串说明运算数的类型.typeof 一般只能返回如下几个结果: number,boolean,string,function,object,undefined.我们可以使用 typeof 来获取一个变量是否存在,如 if(typeof a!="un…
1.语句和表达式 JavaScript中的表达式和语句是有区别的.一个表达式会产生一个值,它可以放在任何需要一个值的地方,比如,作为一个函数调用的参数.下面的每行代码都是一个表达式: myvar3 + xmyfunc("a", "b") 语句可以理解成一个行为.循环语句和if语句就是典型的语句.一个程序是由一系列语句组成的.JavaScript中某些需要语句的地方,你可以使用一个表达式来代替.这样的语句称之为表达式语句.但反过来不可以:你不能在一个需要表达式的地方放…
在 javascript 中经常会用到 typeof 和 instanceof 来判断一个对象的类型,可能 typeof 用得多些,那来看看这两个之间的区别吧. typeof : typeof 是一个一元运算符,放在一个运算数之前,运算数可以是任意类型.它返回值是一个字符串,该字符串说明运算数的类型. typeof 一般只能返回如下几个结果:number,boolean,string,function,object,undefined. <script type="text/javascr…
对于一门编程语言的学习,如果第一步是安装环境,那么第二步一定是学习这门语言的基本规则,变量和数据类型则首当其冲 JavaScipt作为一个蹭Java热度而命名的语言,在很多方面和Java也有一定的相似之处 所以在我决定整理复习Java知识的时候,我希望通过一篇对比的文章,来顺便复习一下JavaScipt 当然还有一个理由就是,纯写Java或者纯写JavaScipt的文章,很多人都做过了,再写着实没什么意思 设计区别 Java是一种完全面向对象的编程语言,想要运用Java写东西就必须先设计对象:…
一.表达式:一个表达式会产生一个值,它可以放在任何需要一个值的地方,比如,作为一个函数调用的参数. 以下例子就是表达式: a=35: b=1+a; a=function (){return 6}: b=1+a();//其中1+a()就是一个表达式 function a(aa){alert aa+1;} b=1; a(b+6);//其中b+6就是一个表达式 var b = (function(){ return 25;})(); //表达式: (function(){ return 25;})()…
在javascript中,类有静态属性和实例属性之分,也有静态方法和实例方法之分 类属性(静态属性):通过类直接访问,不需要声明类的实例来访问 类方法(静态方法):通过类直接访问,不需要声明类的实例来访问 实例属性(动态属性):不能通过类直接访问,需要通过该类声明的实例才能访问 实例方法(动态方法):不能通过类直接访问,需要通过该类声明的实例才能访问 Person = function(){ } Persion.sex = "woman";  //类属性 Person.eat= fun…
Null: null是js中的关键字,表示空值,null可以看作是object的一个特殊的值,如果一个object值为空,表示这个对象不是有效对象. Undefined: undefined不是js中的关键字,其是一个全局变量,是Global的一个属性,以下情况会返回undefined: 1)使用了一个未定义的变量:var i; 2)使用了已定义但未声明的变量: 3)使用了一个对象属性,但该属性不存在或者未赋值: 4)调用函数时,该提供的参数没有提供: function func(a){ con…
在js字符截取函数有常用的三个slice().substring().substr()了,下面我来给大家介绍slice().substring().substr()函数在字符截取时的一些用法与区别吧. stringObject.substring(start,stop) 用于提取字符串中介于两个指定下标之间的字符. start必需.一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置. stop可选.一个非负的整数,比要提取的子串的最后一个字符在 stringObj…
  1.slice(start,stop)和substring(start,stop)  方法都是用于提取字符串中从start开始到stop-1间的字符(因为字符串索引是从0开始).其中 start必选,stop可选. 2.现在主要讲两者间的不同之处 substring(start,stop): 1. 当start等于stop时 返回空字符串. 2.stop可选:如果省略该参数,那么返回的子串会一直到字符串的结尾. 3.如果start>stop,substring 会交换着两个参数,即从end参…
substr(start, length) substring(from, to) slice(from, to) 以上函数只传一个参数时,认为是起始位置,然后按照正方向截取 substring的参数,始终按从小到大截取,传负数默认转换为0 总之,记住substr第二个参数传的是长度,substring会把负参数置为0,…
substr(start,[length])表示从start位置开始取length个字符串:substring(start,end)表示从start,到end之间的字符串,包括start位置的字符但是不包括end位置的字符:若参数值为负数,则将该值转为0;两个参数中,取较小值作为开始位置,截取出来的字符串的长度为较大值与较小值之间的差slice(start,[end])表示从start位置开始到end之间的字符串,包括start位置的字符但是不包括end位置的字符:若第一个参数等于大于第二个参数…
1.substring 方法 定义:用于提取字符串中介于两个指定下标之间的字符 语法:stringObject.substring(start,stop) 参数描述: start 必需.一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置. stop 可选.一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1.如果省略该参数,那么返回的子串会一直到字符串的结尾. 返回值: 一个新的字符串,该字符串值包含 stringObject…
1.substr 方法 返回一个从指定位置开始的指定长度的子字符串. stringvar.substr(start [, length ]) 参数: stringvar 必选项.  要提取子字符串的字符串文字或 String 对象. start 必选项.       所需的子字符串的起始位置.字符串中的第一个字符的索引为 0. length 可选项.     在返回的子字符串中应包括的字符个数. 说明: 如果 length 为 0 或负数,将返回一个空字符串.如果没有指定该参数,则子字符串将延续…
JavaScript::substr(index, length)从下标开始截取多少位,如果length为空,则截取到最后,-1倒数第一位,-2倒数第二位.... Java:substring(startIndex, endIndex)截取包括开始下标的位置到不包括结束下标的位置…
截取字符串   substring 方法用于提取字符串中介于两个指定下标之间的字符  substring(start,end) 开始和结束的位置,从零开始的索引 参数     描述 start     必需.一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置. stop     可选.一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1.如果省略该参数,那么返回的子串会一直到字符串的结尾. 返回值   一个新的字符串,该字符串值…
随着深入理解javascript 后对于一些小知识的了解慢慢加深,这里说的是关于nodelist和array的区别,相信你一定用过toarray()方法,但是这里通过js 的方法讲解nodelist 转 array的原理! 首先从字面上区分:NodeList节点的集合,array 数组. 在Web前端编程中,我们通常会通过document.getElementsByTagName的方法取出一组相同标签的dom元素. var anchors = document.getElementsByTagN…
关于Javascript函数的apply与call方法的用法,网上的文章很多,我就不多话了.apply和call的作用很相似,但使用方式有区别 apply与call的第一个参数都是一个对象,这个对象就是用来掉包函数中本身的this指向的,也就是替身. 从第2个参数开始,就是传递给这个函数的参数了.apply与call的区别就在这个参数形式上,一个是把所有参数放进一个数组,一个是依次写出即可. 首先说明下:apply接受数组形式的参数集,call是依次写出参数. 蛋疼的是我经常记不住到底是appl…
通常情况下, 当我们试图访问某个不存在的或者没有赋值的变量时,就会得到一个undefined值.Javascript会自动将声明是没有进行初始化的变量设为undifined. 如果一个变量根本不存在会发生什么事: >>> foo ReferenceError: foo is not defined 我们得到了一个错误信息.我们在该变量上用typeof操作符看看它是什么类型: >>> typeof foo "undefined" 我们得到的结果为字符串…
JavaScript中有一个call和apply方法,其作用基本相同,但也有略微的区别.其实就是更改对象的内部指针,即改变对象的this指向的内容.这在面向对象的js编程过程中有时是很有用的.call函数和apply方法的第一个参数都是要传入给当前对象的对象,及函数内部的this.后面的参数都是传递给当前对象的参数.如下: <script> var func=new function(){this.a="func"} var myfunc=function(x){ var…
在利用javascript为DOM Element添加事件处理程序时,如果要想下兼容IE6,7时,就不得不考虑addEventListener与attachEvent的异同. 1.首先说下addEventListener,现在IE9+,chrome,firefox等都支持. 所有的DOM节点包含addEventListener,并且接受3个参数: HTMLElement.addEventListener(type,function,bool); type:处理事件的名称,如 "click&quo…
通常情况下, 当我们试图访问某个不存在的或者没有赋值的变量时,就会得到一个undefined值.Javascript会自动将声明是没有进行初始化的变量设为undifined. 如果一个变量根本不存在会发生什么事: >>> foo ReferenceError: foo is not defined 我们得到了一个错误信息.我们在该变量上用typeof操作符看看它是什么类型: >>> typeof foo "undefined" 我们得到的结果为字符串…