例子1: var s="test"; s.len = 4; var t = s.len // t is undefined 原因是s是字符串,第二行代码,实际上是创建一个临时字符串变量,并给其len属性赋值为4,第三行代码通过原始的字符串值创建一个新的字符串对象,然后再去读len属性,当然就没有了啦. 例子2: var s ="hello,world"; var word = s.substring(6,s.length);//"word" 字符…
变量的解构赋值 ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构. 数组的解构赋值 以前,为变量赋值,只能直接指定值: 1 2 3 var a = 1; var b = 2; var c = 3; ES6允许写成下面这样: 1 var [a, b, c] = [1, 2, 3]; 这种写法属于"模式匹配",只要等号两边的模式相同,左边的变量就会被赋予对应的值,如果解构不成功,变量的值就等于undefined,下面是一些使用嵌套数组进行解构的例子: 1 2 3…
JavaScript对象是一种复合值:它是属性和已命名值的集合.通过"."符号来引用属性值.当属性值是一个函数时,称为方法. ①一段你常用但却未必明白其真正底层原理的代码: var s = "hello world!"; var word = s.substring(s.indexOf(" ")+1,s.length); 如前面所说,这里变量s只是一个字符串原始类型,它怎么会有属性(s.length)和方法(s.indexOf().s.subst…
批处理中没有while循环,只能用goto代替.下面是代码 @echo off set /a i = 0 :again echo %i% set /a i= %i% + 1 if %i% lss 10 goto again 关于变量的定义 定义的变量都是环境变量,定义和设置值的时候都要用set关键字.比如第9行 默认是创建字符串类型变量,数值类型变量需要加 /a, set /a xxx这样才能创建数值型变量. 使用变量需要加百分号.%i%这样 第5行的again是定义了一个goto跳转的标记,名…