JS笔记(一)

JSON对象和JSON字符串的相互转换:
  1. JSON对象>>JSON字符串:JSON.stringify(a)a.toJSONString()
  2. JSON字符串>>JSON对象:JSON.parse(b)b.parseJSON()
    也可用eval:
var a ='{"name":"Tom","age":24}';
console.log(eval("("+a+")"));  //Object {name: "Tom", age: 24}
火狐不兼容window.event.keyCode

以下在chrome和IE中有效,在Firefox中报错:window.event is undefined

document.getElementById("test").onkeydown = function (event) {
    if (window.event.keyCode === 13){
        console.log("ok");
    }
}

以下方法兼容IE,chrome和Firefox

document.getElementById("test").onkeydown = function (e) {
    e = e || window.event;
    var keyCode = e.keyCode || e.which || e.charCode;
    if (keyCode === 13){
        console.log("ok");
    }
}
字符串API

所有API都无法修改原字符串,都会返回新字符串

1.大小写转换:
var newStr=str.toUpperCase();  //将str中所有字母转大写
var newStr=str.toLowerCase();  //将str中所有字母转小写
2.检索敏感词位置:
var i=str.indexOf("敏感词"[,fromi]); //找到:返回敏感词第一个字符的位置下标;没找到:-1
//省略fromi,则默认从0位置开始 

找到所有关键词的位置: var i=-1; while((i=str.indexOf("关键词",i+1))!=-1){...}

var i=str.lastIndexOf("敏感词"[,fromi]);//从fromi位置向前找上*一个*敏感词出现的位置
//找到:返回敏感词第一个字符的位置下标;没找到:-1,省略fromi,则默认从结尾位置开始

举个栗子:

var str="we two who and who";
str.lastIndexOf("who",8);//7 

找到所有关键词的位置: var i=str.length; while((i=str.lastIndexOf("关键词",i-1))!=-1){...}

3.获取子字符串:
var subStr=str.slice(starti[,endi+1]) //支持负数参数
var subStr=str.substring(starti[,endi+1])//不支持负数参数,可用length-n代替
//都可省略第二个参数,如果省略,表示一直截取到结尾

var subStr=str.substr(starti,n);//从starti位置开始,截取n个。

例如:str.slice(-4,-2)str.substring(length-4,length-2)

4.切割字符串:
var arr=str.split("分割符");// 切割后的数组中不包含分隔符的

—固定套路:

  • 将字符串打散成字符数组:var arr=str.split(“”);
  • 将英文句子,切割为单词:var arr=str.split(” “);

split与join:

  • split是使用一个指定的分隔符把一个字符串分割存储到数组
 var str="jpg|bmp|gif|ico|png"; 
 var arr=str.split("|"); 
 console.log(arr);  //["jpg", "bmp", "gif", "ico","png"] 
  • join是使用您选择的分隔符将一个数组合并为一个字符串
 var arr = ["we","are","family"];
 var str = arr.join(" ");
 console.log(str); //we are family
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值