详解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 相关文章推荐
Extjs ajax同步请求时post方式参数发送方式
Aug 05 Javascript
js Date自定义函数 延迟脚本执行
Mar 10 Javascript
jQuery.get、jQuery.getJSON、jQuery.post无法返回JSON问题的解决方法
Jul 28 Javascript
关于jQuery UI 使用心得及技巧
Oct 10 Javascript
ajax的hide隐藏问题解决方法
Dec 11 Javascript
javascript学习笔记--数字格式类型
May 22 Javascript
浅析jQuery Ajax请求参数和返回数据的处理
Feb 24 Javascript
jQuery继承extend用法详解
Oct 10 Javascript
JavaScript实现瀑布流图片效果
Jun 30 Javascript
angular框架实现全选与单选chekbox的自定义
Jul 06 Javascript
JavaScript实现的滚动公告特效【基于jQuery】
Jul 10 jQuery
如何在JavaScript中正确处理变量
Dec 25 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 防注入函数(格式化数据)
2011/08/08 PHP
详解yii2使用多个数据库的案例
2017/06/16 PHP
PHP使用两个栈实现队列功能的方法
2018/01/15 PHP
PHP-FPM 设置多pool及配置文件重写操作示例
2019/10/02 PHP
Laravel6.0.4中将添加计划任务事件的方法步骤
2019/10/15 PHP
基于jquery的商品展示放大镜
2010/08/07 Javascript
js去字符串前后空格5种实现方法及比较
2013/04/03 Javascript
jquery 提交值不为空的元素示例代码
2013/05/10 Javascript
javascript验证身份证完全方法具体实现
2013/11/18 Javascript
如何书写高质量jQuery代码(使用jquery性能问题)
2014/06/30 Javascript
JS实现iframe编辑器光标位置插入内容的方法(兼容IE和Firefox)
2016/06/24 Javascript
JavaScript重定向URL参数的两种方法小结
2016/10/19 Javascript
在网页中插入百度地图的步骤详解
2016/12/02 Javascript
详解webpack + vue + node 打造单页面(入门篇)
2017/09/23 Javascript
VUE2.0+Element-UI+Echarts封装的组件实例
2018/03/02 Javascript
vue根据值给予不同class的实例
2018/09/29 Javascript
JavaScript中常用的简洁高级技巧总结
2019/03/10 Javascript
React中使用外部样式的3种方式(小结)
2019/05/28 Javascript
对vuex中getters计算过滤操作详解
2019/11/06 Javascript
Vue切换Tab动态渲染组件的操作
2020/09/21 Javascript
JavaScript中EventBus实现对象之间通信
2020/10/18 Javascript
python类定义的讲解
2013/11/01 Python
Python实现的数据结构与算法之双端队列详解
2015/04/22 Python
python+django加载静态网页模板解析
2017/12/12 Python
Python3.5 创建文件的简单实例
2018/04/26 Python
pandas值替换方法
2018/07/10 Python
Python将列表数据写入文件(txt, csv,excel)
2019/04/03 Python
Django框架封装外部函数示例
2019/05/28 Python
LivingSocial爱尔兰:爱尔兰本地优惠
2018/08/10 全球购物
自主招生自荐信范文
2013/12/04 职场文书
大学生学期自我鉴定
2014/03/19 职场文书
银行竞聘演讲稿
2014/05/16 职场文书
庆祝新中国成立65周年“向国旗敬礼”网上签名寄语
2014/09/27 职场文书
入党个人总结范文
2015/03/02 职场文书
爱国主义影片观后感
2015/06/18 职场文书
2016猴年春节慰问信
2015/11/30 职场文书