【对象】【字符串】对象转字符串,并 去除最后一个符号(逗号), 字符串转数组对象, js 去除字符串第一位逗号的方法, 移除找到的指定元素,字符串转对象

对象转字符串,并 去除最后一个符号(逗号)

<script>
    window.οnlοad=function() {
        var obj = {name: "xxx", age: 30, sex: "female"};//定义一个object对象
        var str = ''//定义一个空字符用来接收对象里的key或者value
        for(var item in obj) {//遍历item变量里的对象的属性和元素,
            str += obj[item] + ","//将obj对象的值遍历出来,并且追加到str字符中。
            //str += item + ","//将obj对象的属性遍历出来,并且追加到str字符中。
        }
        //第一种方法、将字符串中最后一个元素","逗号去掉,
        //str = str.substring(0, str.lastIndexOf(','));
 
        //第二种方法、将字符串中最后一个元素","逗号去掉,
        //str = (str.substring(str.length - 1) == ',') ? str.substring(0, str.length - 1) : str;
 
        //第三种方法、将字符串中最后一个元素","逗号去掉,
        //var str=str.substring(0,str.length-1);//3、将字符串中最后一个元素","逗号去掉,
 
        //第四种方法、将字符串中最后一个元素","逗号去掉,
        var reg=/,$/gi;
        str=str.replace(reg,"");
 
 
        console.log(str)
    }
</script>

字符串转数组对象,‘{“price”:“100”,“id”:“1”}’ 转 【{“price”:“200”,“id”:“2”}】

亲测有效

// 待转换字符串 单个
const str = '{"price":"100","id":"1"}'
//  待转换字符串 多个
const str = '{"price":"100","id":"1"},{"price":"200","id":"2"}' 
// 待转换字符串 包含有 【中括号】
const str = '[{"price":"100","id":"1"},{"price":"300","id":"3"}]' 
// 如果有中括号,先去掉中括号 start
if(str != ""){
	const pattern=/[【】[\]\s]/g;
	str = str .replace(pattern,"");
}
// 去掉中括号 end
// 字符串转数组,数组的前几个 大括号都被截取了,{"price":"100","id":"1"  最后一个是空字符串''
	var s = str.split('}');
	// 截取后  第一个 {"price":"100","id":"1"
	//        第二个 ,{"price":"200","id":"2"
	//        第三个 '' 空
	const index = s.indexOf(""); // 移除元素'' 最后一个
	if (index > -1) { // 移除找到的指定元素
	  s.splice(index, 1); // 移除元素
	}
	
	// for let i   YYDS,  用 foreach 总报错
	for (let i = 0; i < s.length; i++) {
		// 给没有闭合 大括号的添上 ,
		if(s[i].indexOf('}') == -1){
			s[i] = s[i] + '}'
		}
		
		// js 去除字符串第一位逗号的方法
		if(s[i].indexOf(',{') !== -1){
			 s[i]=s[i].substr(1);
		}
		
		// 转为对象
		s[i] = JSON.parse(s[i]);
		
		// 如果是对象,true 为对象 则 增加属性,判断不确定
		if(Object.prototype.toString.call(s[i]) === '[object Object]' && val !== null && val !== undefined){
			s[i].active = false;
		}
	}
	console.log(s)// [{"price":"100","id":"1"},{"price":"200","id":"2"}]

字符串转对象

let str = '[{"name":"黑色","photo":"图片","price":"100"} ]' // 字符串
// 如果有中括号,先去掉中括号 start  //去掉中括号后为 {"name":"黑色","photo":"图片","price":"100"}
if(str != ""){
	const pattern=/[【】[\]\s]/g;
	str = str .replace(pattern,"");
}
// 字符串转数组
str = new Array(str); //数组  [{"name":"黑色","photo":"图片","price":"100"} ]
// 字符串转对象
// res.data.price = JSON.parse(res.data.material[0]).price;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值