详解JavaScript基础知识(JSON、Function对象、原型、引用类型)


Posted in Javascript onJanuary 16, 2018

1、JSON

详解JavaScript基础知识(JSON、Function对象、原型、引用类型)

概念:JavaScript 对象表示法(JavaScript Object Notation),是一种轻量级的数据交换格式

特点:易于程序员编写和查看;易于计算机解析和生成

数据结构:Object对象格式   { key: value , key: value }

Array数组格式   [ value , value ]

Eg:  var json = ‘ { “   ” : ‘'  ‘' } '    (内部双引号,外部单引号)

 * JSON - 支持独立的".json"文件;   允许嵌套

JSON格式在主流开发语言中几乎都支持--- 各个语法语言的共识就是字符串

JSON中的字符串只能使用双引号 

* 支持的数据类型: string; number; boolean; null; object; array

     转换JSON对象与字符串

转换为JSON对象: JSON.parse(对象)  ---(服务器=>客户端), 解析JSON字符串,

转换为JSON字符串:JSON.stringify(字符串)  ---- (客户端=>服务器),

2、Function对象

   函数与Function对象:

Function类型是JavaScript提供的引用类型之一;通过Function类型创建了一个Function类型的对象,该对象实际是一个[函数]。

var 对象名 = new Object( );   ---创建对象

var 函数名 = new Function( );   // function anonymous( ){}

【在JavaScript 中,所有函数是Function的对象】

var 函数名 = new Function(参数,函数体);

括号( )里面最后一个参数,识别为函数体, 除此都是形参。---不建议

   构造函数:

作用:为了创建对象(工厂方式)

语法结构:

function 构造函数名称(形参){
 this.属性名 = 属性值;    ---- this的含义 -> 指的是创建的对象
 this.方法名 = function( ){ }   
}
var 对象名 = new 构造函数名称( );

3、原型

在 JavaScript 中,函数是一个包含属性和方法的 Function 类型的对象。

属性(Prototype) 在函数定义时就已经存在,是Function对象(即函数)预定义的一个属性;它的初始值是一个空对象。在 JavaScript 中没有定义函数的原型类型,所以原型可以是任何类型。

原型是用于保存对象的共享属性和方法,原型的属性和方法并不影响函数本身属性和方法。

²  显式原型 - Function 的 prototype

在真实的开发环境中使用

²  隐式原型 - Function 的 __proto__

用于开发过程中的测试,不能被使用在真实的开发环境中

4、引用类型

   数据类型:

Number-通过创建对象方式定义数字;      String-通过创建对象方式定义数字;

Boolean-通过创建对象方式定义数字;

   Date类型

作用:获取常规的日期+时间

getFullYear( ) : 获取年份;   getMonth( ) : 获取月份;     getDate( ):获取日期

getTime ( ):距离1970年1月1日到目前的时间和日期 [利用毫秒值进行时间的计算;实现时间戳(标识)]

eg: 日期格式为 YYYY年MM月DD日的当前时间

var date = new Date( );
console.log(date.getFullYear( ) + '年' + date.getMonth( ) + '月' + date.getDay( ) + '日');

  Math类型

属性:PI - 圆周率                              注:不需要创建对象

方法:对数字的处理

ceil(x):向上取整即增;       floor(x):向下取整即舍;     round(x):四舍五入

pow(x1, x2):n1的n2次方     random( ):生成0-1之间的随机数

eg:0-100随机数   console.log(Math.random( )*100);     

1-100随机整数  console.log(Math.random( )*99+1);

20%概率执行一,50%概率执行二  if( num <= 0.2 ){

                                      } else {

                                    }

   Global类型

全局对象:全局属性(Infinity、NaN、undefined)、全局方法,在JavaScript中任何位置都可调用。                    

Javascript 相关文章推荐
innerText和innerHTML 一些问题分析
May 18 Javascript
jquery 按键盘上的enter事件
May 11 Javascript
js图片模糊切换显示特效的方法
Feb 17 Javascript
jQuery实现按键盘方向键翻页特效
Mar 18 Javascript
js实现根据身份证号自动生成出生日期
Dec 15 Javascript
使用JSON作为函数的参数的优缺点
Oct 27 Javascript
vue2.0实战之使用vue-cli搭建项目(2)
Mar 27 Javascript
JS实现简单的天数计算器完整实例
Apr 28 Javascript
详解Vue 2.0封装axios笔记
Jun 22 Javascript
Es6 Generator函数详细解析
Feb 24 Javascript
在Webpack中用url-loader处理图片和字体的问题
Apr 28 Javascript
原生js实现html手机端城市列表索引选择城市
Jun 24 Javascript
浅谈vue的props,data,computed变化对组件更新的影响
Jan 16 #Javascript
Parcel 打包示例(React HelloWorld)
Jan 16 #Javascript
详解Vue快速零配置的打包工具——parcel
Jan 16 #Javascript
vue watch自动检测数据变化实时渲染的方法
Jan 16 #Javascript
动态加载权限管理模块中的Vue组件
Jan 16 #Javascript
vue2.0 兄弟组件(平级)通讯的实现代码
Jan 15 #Javascript
解析Angular 2+ 样式绑定方式
Jan 15 #Javascript
You might like
php实现httpRequest的方法
2015/03/13 PHP
详解PHP中instanceof关键字及instanceof关键字有什么作用
2015/11/05 PHP
关于WordPress的SEO优化相关的一些PHP页面脚本技巧
2015/12/10 PHP
zen cart实现订单中增加paypal中预留电话的方法
2016/07/12 PHP
PHP判断文件是否被引入的方法get_included_files用法示例
2016/11/29 PHP
PHP lcfirst()函数定义与用法
2019/03/08 PHP
javascript实现的使用方向键控制光标在table单元格中切换
2010/11/17 Javascript
php与js的区别是什么
2013/08/05 Javascript
深入浅析同源策略和跨域访问
2015/11/26 Javascript
封装获取dom元素的简单实例
2016/07/08 Javascript
js实现增加数字显示的环形进度条效果
2017/02/05 Javascript
利用原生JS与jQuery实现数字线性变化的动画
2017/02/24 Javascript
简单实现js上传文件功能
2017/08/21 Javascript
详解Angular5路由传值方式及其相关问题
2018/04/28 Javascript
JavaScript 判断iPhone X Series机型的方法
2019/01/28 Javascript
VScode格式化ESlint方法(最全最好用方法)
2019/09/10 Javascript
微信小程序转发事件实现解析
2019/10/22 Javascript
[01:01:13]2018DOTA2亚洲邀请赛 4.5 淘汰赛 Mineski vs VG 第三场
2018/04/06 DOTA
[01:35:53]完美世界DOTA2联赛PWL S3 Magma vs GXR 第二场 12.13
2020/12/17 DOTA
python面向对象_详谈类的继承与方法的重载
2017/06/07 Python
python实现简单tftp(基于udp协议)
2018/07/30 Python
Django Celery异步任务队列的实现
2019/07/24 Python
python 实现字符串下标的输出功能
2020/02/13 Python
使用豆瓣源来安装python中的第三方库方法
2021/01/26 Python
机械电子工程毕业生自荐信
2013/11/23 职场文书
品质主管的岗位职责
2013/12/04 职场文书
大学生职业规划范文:象牙塔生活的四年计划
2014/01/14 职场文书
幼儿园秋游感想
2014/03/12 职场文书
中队活动总结
2014/08/27 职场文书
党员教师自我剖析材料
2014/09/29 职场文书
党的群众路线教育实践活动自我剖析材料
2014/10/08 职场文书
2015中学教学工作总结
2015/07/22 职场文书
继续教育心得体会(共6篇)
2016/01/19 职场文书
技术入股协议书
2016/03/22 职场文书
numpy数据类型dtype转换实现
2021/04/24 Python
Pytorch中TensorBoard及torchsummary的使用详解
2021/05/12 Python