JSON对象使用场景以及this 关键字的几个方法
时间:2019-08-30
本文章向大家介绍JSON对象使用场景以及this 关键字的几个方法,主要包括JSON对象使用场景以及this 关键字的几个方法使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
-
JSON.parse
是将 json 格式的字符串转换为 js 的对象或者数组var obj = {
name: 'Jack',
age: 18,
gender: '男'
}
var arr = [
{
name: 'Jack',
age: 18,
gender: '男'
},
{
name: 'Jack',
age: 18,
gender: '男'
},
{
name: 'Jack',
age: 18,
gender: '男'
}
]
var jsonObj = JSON.stringify(obj)
var jsonArr = JSON.stringify(arr)
console.log(jsonObj)
console.log(jsonArr)
对象深克隆
var obj = {
a:10,
b:20,
c:{
a:10
}
};
var obj2 = JSON.parse(JSON.stringify(obj));
console.log(obj2);
obj2.c.a=20;
alert(obj.c.a);//10-
jsonObj
就是 json 格式的对象字符串 -
jsonArr
就是 json 格式的数组字符串
-
使用场景:
1,对象的深克隆
2,缓存的存储
3,前后台数据传输解析
this 关键字 主要用于函数中 不同的场景下 指向不同
//普通函数 window
function fn(){
console.log(this);
}
fn(); //window
//事件函数 指向事件源
var btn = document.querySelector('button');
btn.onclick = function(){
console.log(this);//button 事件源
}
//定时器 中也是window
setInterval(function(){
console.log(this); //window
},1000);
//预保留this
//事件函数中嵌套了内层函数,需要在内层函数中使用this得到事件源(this指向window)
var btn = document.querySelector('button');
btn.onclick = function(){
var _this = this;
setInterval(function(){
console.log(_this);
},1000);
}
//this在对象的方法中,指向 调用这个方法的对象
var obj ={
name:"小明",
act:function(){
console.log(this.name);
},
c:{
name:"小红",
b:function(){
console.log(this.name);
}
}
}
obj.act();
obj.c.b();
call() apply() bind() 可以改变this在函数中的指向
bind方法
原文地址:https://www.cnblogs.com/cxf1214/p/11437434.html
- 轻松初探 Python 篇(四)—list tuple range 知识汇总
- CSS深入理解学习笔记之overflow
- Python爬虫实践——简单爬取我的博客
- Python爬虫入门(二)
- 在ASP.NET MVC5应用程序中快速接入QQ和新浪微博OAuth起步创建应用程序使用NUGET更新OWIN中间件启动SSL支持申请腾讯QQ的Oauth申请新浪微博的Oauth快速接入资源地址&源码
- 有趣的算法(六) ——Find-Union算法
- 有趣的算法(七) ——快速排序改进算法
- 编写你人生中第一个机器学习代码吧!
- 使用Octave来学习Machine Learning(二)
- RESTful API的十个最佳实践1. 使用名词而不是动词 2. Get方法和查询参数不应该改变资源状态3. 使用名词的复数形式 4. 为关系使用子资源 5. 使用HTTP头决定序列化格式 6. 使
- MYSQL数据库设计的一些小技巧[转载]
- 在ASP.NET 5应用程序中的跨域请求功能详解什么是“同域”添加CORS包在应用程序中配置CORSCORS策略选项跨域请求中的凭据设置先行请求的过期时间CORS是怎么样工作的先行请求
- 有趣的算法(八) ——红黑树插入算法
- 使用Donut Caching和Donut Hole Caching在ASP.NET MVC应用中缓存页面何时使用Donut CachingDonut Caching 的Nuget 包Donut Ho
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 如何科学修改 node_modules 里的文件
- C++之继承相关问题——菱形继承&继承
- 【redis】来吧,展示一下redis 发布-订阅模式
- rsync 用法教程
- 【译】构建RESTful API的13种最佳实践
- 如何优雅的实现消息通信?
- koa框架实现微信公众号回复用户小程序卡片
- frida实战笔记
- 让项目效果更酷!ThingJS地图新功能——3D线条渲染
- 重磅来袭:腾讯云ClickHouse支持数据均衡服务
- 聊聊claudb的set command
- Flutter通过BasicMessageChannel与Android iOS 的双向通信
- MySQL案例:binlog_row_image如何取舍
- “青柠日报”小程序
- 2020年学习Python-爬取英雄联盟皮肤