js中常用方法集合

1、

var post = new Array(); 
post['class'] = '1';
post['type']  = '2';
post['id']  = '3';
var postjson = JSON.stringify(post);
console.log(postjson);

打印出来的值是一个[],原因是什么?

post new出来的是一个数组对象,然后你给数组对象设置属性,但是数组序列化的时候只会序列化数组中的元素,会忽略对象上的属性和值。

按我实际的需求,直接用一个空的对象来存放属性就行了。这也从侧面验证了 JSON.stringify 只能把对象转换成json串,不能转换数组。

var post = {}; 
post['class'] = '1';
post['type']  = '2';
post['id']  = '3';
var postjson = JSON.stringify(post);
console.log(postjson);

 2、js中二维对象必须先定义,再使用。例如下面代码,会报错误 Cannot set property 'lv-begin' of undefined

at xxx

var goldData = {};
goldData[1]['lv-begin'] = 1;

正确的写法如下

var goldData = {};
goldData[1] = {};
goldData[1]['lv-begin'] = 1;

 3、js中计算字符串长度,准确获取字符串长度,需要循环遍历,这里只讲普通方法

var str='apple';
var len = str.length;
console.log(len);

4、分割字符串

var str1 = '2:3:4:5';
var str2 = '|a|b|c';
var split_str1 = str1.split(":"); //将返回["2", "3", "4", "5"]
var split_str2 = str2.split("|");//将返回["", "a", "b", "c"]

5、获取字符串中的数字,最好的办法是用正则匹配的方式

var s = 'apple大幅度发5262';
var num = s.replace(/[^0-9]ig/,"");
alert(num); //5262

 

6、判断字符串是否为数字

var s = 'ik';
if (isNaN(s)) {
  alert('不是数字');
}

 

posted @ 2018-10-17 20:13  queqp  阅读(2062)  评论(0编辑  收藏  举报