在使用变量前可以不声明。如var sTest = "hello ";sTest2 = sTest + "world";
每条语句结尾的分号可有可无。var sColor1 = "red"; var sColor2 = 'red';
其他类型到字符串,以double为例: var str = doubleVar.toString();
多个字符串可以用 加号 拼接。如 str3=str1+"hello"+str2;
substring(start,end)
下标从0开始,截取字符串为[start,end)。
split(regex)
根据正则分割字符串,返回的是字符串数组。
indexOf(text)
查找子串的位置。<0表示不存在。
length
长度,它是字符串类的成员变量,不是函数。
charCodeAt(i)
取得对应位置字符的编码。
字符串可以直接用 关系符比较,如 大于、小于、等于。规则为字典序。
js中没有char类型。
string是以utf-8编码的。可以利用String.charCodeAt(i)方法取得对应位置字符的编码。于是string转byte[]就可以这么写:
<script> var arr=[]; var str="hi123"; //转byte[] for(var i=0;i<str.length;i++) arr.push(str.charCodeAt(i)); console.log(arr);//[104, 105, 49, 50, 51] //还原 console.log(String.fromCharCode(104, 105, 49, 50, 51));//hi123 </script>
对应的,java代码可以直接用这个byte[]:
byte arr[]={104, 105, 49, 50, 51}; String a=new String(arr); System.out.println(a);//hi123
string.match()方法返回一个数组,盛放的是得到匹配的字符串。
var arr="abc1d2.3rtr 45".match(/\d+\.*\d*/g); //返回1 2.3 45注意match()函数的形参,它想要匹配的是整数或小数。 /regularExp/g ,后面的g不可少,表示global全局匹配。
var mark = true;
字符串到数字有parseInt() 和 parseFloat()。只有对 String 类型调用这些方法,它们才能正确运行,对其他类型返回的都是 NaN。
var arr = new Array(2); arr[0] = i1; arr[1] = i2;
成员变量
length //数组的元素数目
成员函数
toString() //返回字符串,类似java的toString()。
indexOf() //返回元素在数组中的下标,若没有则是负数。针对string类型的元素可以直接用。
reverse()//对数组中元素逆序排列
sort() //对数组的元素进行排序。支持对自定义结构体的排序,因为它有一个重载形式,传入的是比较函数,见下:
//arr数组中盛放的结构体都有name这个字段。 function mayComparator(a,b){ if(a.name>b.name) return 1; if(a.name == b.name) return 0; return -1; } arr.sort(mayComparator);
push(element) //向数组末尾追加元素
splice(index,howmany) //删除 [index,index+howmany]这些元素
splice(index,howmany,item1,.....,itemX) //删除 [index,index+howmany]这些元素并在删除的元素位置插入若干个元素
<script type="text/javascript"> var arr = new Array(6) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" arr[3] = "James" arr[4] = "Adrew" arr[5] = "Martin" document.write(arr + "<br />") //George,John,Thomas,James,Adrew,Martin arr.splice(2,3,"William") document.write(arr) //George,John,William,Martin </script>
var str1='hi'; var str2="hi"; console.log(str1==str2);//true console.log(str1===str2);//true console.log("*************"); var obj1={name:'xiaoMing',age:13};//false var obj2={name:'xiaoMing',age:13};//false console.log(obj1==obj2); console.log(obj1===obj2); console.log("*************"); str1='123'; var num1=123; console.log(str1==num1);//true console.log(str1===num1);//false console.log("*************");