●方案1 :
// 定义一个字符串
var str = 'abcdefg'
// 定义一个空的字符串
var str1 = ''
// 循环遍历字符串
for (var i = 0; i < str.length; i++) {
console.log(str[i]);
str1 = str[i] + str1
}
console.log(str1);
复制代码
●方案2 :
// 我们学过一个数组里面的方法是reverse 翻转的意思但是这个是数组的方法
// 我们只要想办法把字符串转换成数组就好了
// 字符串里面有一个方法 split() 就是用连接符把一个字符串转换成数组
// 转换成了数组以后我们调用reverse 方法
// 但是 reverse 方法执行完了以后是不还是一个数组啊
// 我们是不是还要转换成一个字符串
// 数组里面有一个方法叫join()方法
var str = 'abcdefg'
var s1 = str.split('')
console.log(s1);
var s2 = s1.reverse()
console.log(s2);
var s3 = s2.join('')
console.log(s3);
// 简化一下
var str = 'abcdefg'
var res = str.split('').reverse().join('')
console.log(res);
复制代码
案例-查询字符串操作
查询字符串: 'name=Jack&age=18&gender=男'
用于前后端数据交互的时候传递参数的一种格式
查询字符串中每条信息之间必须使用&符号隔开
每条信息有key和value组成
每条信息之间使用等号(=)连接
●查询字符串转换为对象
function parseQueryString(str) {
// 因为你最要返回一个对象所以要有一个对象
var obj = {}
// 我们拿到了传递进来的字符串 但是我们要的对象里面是键值对的形式
// 所以首先我们要去掉&符号
var str = str.split('&')
console.log(str);
// 我们现在得到的是一个数组 要得到里面的每一个是不是要通过循环
str.forEach(function (item) {
console.log(item);
var s = item.split('=')
console.log(s);
obj[s[0]] = s[1]
})
// 最后我们要得到的也是一个对象 所以我们也要返回一个对象
return obj
}
代码优化
function parseQueryString(str) {
var obj = {}
var str = str.split('&')
str.forEach(function (item) {
obj[item.split('=')[0]] = item.split('=')[1]
})
return obj
}
var res = parseQueryString('name=Jack&age=18&gender=男')
console.log('转换后的结果 :', res);
复制代码
●对象转换为查询字符串
function queryString(obj) {
// 1.定义一个空字符串
var str = ''
// 2. 实现过程
// 拿到了传进来的对象我们是不是要拿到对象里面的键和值
for (var k in obj) {
console.log(k, '----------', obj[k]);
// 我们能拿到键和值 接下来就是字符串的拼接了是把
str += k + '=' + obj[k] + '&'
}
// 我们最后只要把后面的&符号去掉就好了
// str = str.slice(0, str.length - 1)
str = str.slice(0, -1)
// 3.返回一个最后的结果
return str
}
// 代码优化
function queryString(obj) {
var str = ''
for (var k in obj) {
str += k + '=' + obj[k] + '&'
}
return str.slice(0, -1)
}
// 使用
var res = queryString({ name: 'Jack', age: '18', gender: '男' })
console.log('最后的结果 :', res);
复制代码
JOSN 格式字符串
json 字符串格式
●JSON格式字符串: '{"name":"Jack","age":18,"gender":"男"}'
○字符串内必须是对象或者数组这样的数据类型别的不可以
○字符串内的key和value必须要使用双引号("")包裹,纯数字和布尔值除外
○在key 和 value 以外的位置只能有 {} [] : , 不能有其它的符号
○在集合内最后一项的末尾不能有多余的逗号(,)
json 的作用
●主要用于传送数据
●JSON 可以将 js 对象中表示的一组数据转换为字符串
●然后就可以在函数之间轻松地传递这个字符串
●或者在异步应用程序中将字符串从 Web 客户机传递给服务器端程序
json 格式字符串常用方法
●js 为我们提供了两个方法来操作JSON格式的数据
1.把js的数据格式转换成JSON格式
○语法: JSON.stringify(js数据格式)
○返回值: 转换好的数据格式
// js数据格式转换为JSON格式
var obj = { name: "Jack", age: 18, gender: "男" }
var res = JSON.stringify(obj)
console.log(res);
console.log(typeof res);
复制代码
2.把JSON格式转换成js数据格式
○语法: JSON.parse(JSON数据格式)
○返回值: 转换好的数据格式
// json 格式数据转换成js数据格式
var str = '{"name":"Jack","age":18,"gender":"男"}'
var res = JSON.parse(str)
console.log(res);
console.log(typeof res);