JavaScript基础知识(JSON、Function对象、原型、引用类型)
19、JSON
概念: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(字符串) ---- (客户端=>服务器),
20、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 构造函数名称( );
21、原型
在 JavaScript 中,函数是一个包含属性和方法的 Function 类型的对象。
属性(Prototype) 在函数定义时就已经存在,是Function对象(即函数)预定义的一个属性;它的初始值是一个空对象。在 JavaScript 中没有定义函数的原型类型,所以原型可以是任何类型。
原型是用于保存对象的共享属性和方法,原型的属性和方法并不影响函数本身属性和方法。
² 显式原型 - Function 的 prototype
在真实的开发环境中使用
² 隐式原型 - Function 的 __proto__
用于开发过程中的测试,不能被使用在真实的开发环境中
20、引用类型
数据类型:
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基础知识(JSON、Function对象、原型、引用类型)的更多相关文章
- JavaScript 基础(二) - 创建 function 对象的方法, String对象, Array对象
创建 function 对象的两种方法: 方式一(推荐) function func1(){ alert(123); return 8 } var ret = func1() alert(ret) 方 ...
- JavaScript基础知识之——Location 对象详解
属性 描述 location.hash 设置或取得 URL 中的锚 location.host 设置或取得 URL 中主机(包括端口号) location.hostname 设置或取得 URL 中的主 ...
- Javascript基础知识总结一
Javascript基础知识总结一 <!DOCTYPE html> <html> <head lang="en"> <meta chars ...
- 学习javascript基础知识系列第二节 - this用法
通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...
- 学习javascript基础知识系列第三节 - ()()用法
总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...
- JavaScript 基础知识 - BOM篇
前言 本篇文章是JavaScript基础知识的BOM篇,如果前面的<JavaScript基础知识-DOM篇>看完了,现在就可以学习BOM了. 注意: 所有的案例都在这里链接: 提取密码密码 ...
- JavaScript高级篇之Function对象
JavaScript高级篇之Function对象 一: Function对象引入: Function对象是js的方法对象,可以用Function实例化出任何js方法对象. 例如: <%@ pag ...
- javascript的基础知识及面向对象和原型属性
自己总结一下javascript的基础知识,希望对大家有用,也希望大家来拍砖,毕竟是个人的理解啊 1.1 类型检查:typeof(验证数据类型是:string) var num = 123; cons ...
- 林大妈的JavaScript基础知识(三):JavaScript编程(3)原型
在一般的编程语言中,我们使用继承来复用代码,做成良好的数据结构.而在JavaScript中,我们使用原型来实现以上的需求.由于JavaScript专注于对象而摒弃了类,我们要明白原型和继承的确是有差异 ...
随机推荐
- 自学Python5.4-内置模块(2)
内置模块(2) 7. xml8.conf9.requests10.logging11.paramiko12.time & datetime 时间相关的操作,时间主要分三种表示方式: 时间戳 ...
- 我在Windows下的第一个Shellcode
纪念我的第一个Shellcode(XP SP3, VC6): 1.获取MessageBoxA(ASCII)的静态地址 2.编写汇编代码调试,获取对应的机器码(注意字符串由栈顶向栈底生长,push由栈底 ...
- ArcGIS API for JavaScript 4.2学习笔记[10] 2D添加指北针widget、视图保存、视图padding(第二章完结)
这几个例子是第二章除了入门之外比较简单的几个,就做个合集,把最核心的代码(第二参数)和 引用放上来即可,不作多解释. 2D地图添加指北针widget 2D地图一般修正方向为正北方就需要这个widget ...
- CentOS7.4 chrony时间同步服务器部署(替代NTPD)
Chrony是一个开源的自由软件,它能保持系统时钟与时钟服务器(NTP)同步,让时间保持精确. 它由两个程序组成:chronyd和chronyc. chronyd是一个后台运行的守护进程,用于调整内核 ...
- tideways+xhgui搭建php 7的性能测试环境
前言 我之前使用的是xhprof+xhgui分析线上环境的性能,然而PHP版本升级到PHP 7之后,xhprof已经不可用,于是改用tideways+xhgui,这实际上也是PHP7下开源方案的唯一选 ...
- linux部署solr服务--小记
1.将solr压缩包上传到web项目-solr文件夹下 2.解压solr-5.5.4.zip到当前文件夹下 linux 解压zip文件到当前目录 unzip filename.zip 提示没有unzi ...
- 云计算---openstack镜像制作详解
一:本地部署KVM 1.安装KVM 1.1安装须知 查看CPU是否支持kvm完全虚拟机. [root@LINUX ~]# grep "flags" /proc/cpuinfofla ...
- web打印总结
一.打印样式 区别显示和打印的样式 使用media="print"控制打印时的样式,如下: 打印时不显示打印按钮,设置页面宽度 <style media="prin ...
- 基于2-channel network的图片相似度判别
一.相关理论 本篇博文主要讲解2015年CVPR的一篇关于图像相似度计算的文章:<Learning to Compare Image Patches via Convolutional Neur ...
- 【原创】Android AOP面向切面编程AspectJ
一.背景: 在项目开发中,对 App 客户端重构后,发现用于统计用户行为的友盟统计代码和用户行为日志记录代码分散在各业务模块中,比如在视频模块,要想实现对用户对监控点的实时预览和远程回放行为进行统计, ...