Practical Training js中typeof用法详细介绍

json.stringify()是序列化函数,用于将对象转化为字符串;json.parse()是反序列化函数,用于将字符串转化为json对象

1、parse用于从一个字符串中解析出json对象,如

var str = '{"name":"huangxiaojian","age":"23"}'

结果:

JSON.parse(str)

Object

1.  age: "23"

2.  name: "huangxiaojian"

3.  __proto__: Object

注意:单引号写在{}外,每个属性名都必须用双引号,否则会抛出异常。

2、stringify()用于从一个对象解析出字符串,如

var a = {a:1,b:2}

结果:

JSON.stringify(a)

"{"a":1,"b":2}"

3、json.stringify语法实例讲解

语法: 
  JSON.stringify(value [, replacer] [, space]) 

·        value:是必选字段。就是你输入的对象,比如数组,类等。 

·        replacer:这个是可选的。它又分为2种方式,一种是数组,第二种是方法。 

  情况一:replacer为数组时,通过后面的实验可以知道,它是和第一个参数value有关系的。一般来说,系列化后的结果是通过键值对来进行表示的。 所以,如果此时第二个参数的值在第一个存在,那么就以第二个参数的值做key,第一个参数的值为value进行表示,如果不存在,就忽略。

  情况二:replacer为方法时,那很简单,就是说把系列化后的每一个对象(记住是每一个)传进方法里面进行处理。 

·        space:就是用什么来做分隔符的。 

  1)如果省略的话,那么显示出来的值就没有分隔符,直接输出来。
  2)如果是一个数字的话,那么它就定义缩进几个字符,当然如果大于10 ,则默认为10,因为最大值为10。
  3)如果是一些转义字符,比如“\t”,表示回车,那么它每行一个回车。 
  4)如果仅仅是字符串,就在每行输出值的时候把这些字符串附加上去。当然,最大长度也是10个字符。 

// JS是弱类型语言不会自己取数值。但是HTML不是弱类型语言

// 运算符 + - * /

// 只有当+号时,其外都时运算符

vara=3*"1.5";

console.log(a);

 

 

json.stringify()和JSON.parse()用法

json.stringify()是序列化函数,用于将对象转化为字符串;json.parse()是反序列化函数,用于将字符串转化为json对象

1、parse用于从一个字符串中解析出json对象,如

var str = '{"name":"huangxiaojian","age":"23"}'

结果:

JSON.parse(str)

Object

1.  age: "23"

2.  name: "huangxiaojian"

3.  __proto__: Object

注意:单引号写在{}外,每个属性名都必须用双引号,否则会抛出异常。

2、stringify()用于从一个对象解析出字符串,如

var a = {a:1,b:2}

结果:

JSON.stringify(a)

"{"a":1,"b":2}"

3、json.stringify语法实例讲解

语法: 
  JSON.stringify(value [, replacer] [, space]) 

·        value:是必选字段。就是你输入的对象,比如数组,类等。 

·        replacer:这个是可选的。它又分为2种方式,一种是数组,第二种是方法。 

  情况一:replacer为数组时,通过后面的实验可以知道,它是和第一个参数value有关系的。一般来说,系列化后的结果是通过键值对来进行表示的。 所以,如果此时第二个参数的值在第一个存在,那么就以第二个参数的值做key,第一个参数的值为value进行表示,如果不存在,就忽略。

  情况二:replacer为方法时,那很简单,就是说把系列化后的每一个对象(记住是每一个)传进方法里面进行处理。 

·        space:就是用什么来做分隔符的。 

  1)如果省略的话,那么显示出来的值就没有分隔符,直接输出来。
  2)如果是一个数字的话,那么它就定义缩进几个字符,当然如果大于10 ,则默认为10,因为最大值为10。
  3)如果是一些转义字符,比如“\t”,表示回车,那么它每行一个回车。 
  4)如果仅仅是字符串,就在每行输出值的时候把这些字符串附加上去。当然,最大长度也是10个字符。 

 

 

// JS是弱类型语言不会自己取数值。但是HTML不是弱类型语言

// 运算符 + - * /

// 只有当+号时,其外都时运算符

vara=3*"1.5";

console.log(a);

 

经典的面试题:

1、// 为什么 var a = 0.1+0.2;=0.30000000000000004 ?

// 答:二进制的问题整数不会出现问题但是小数转换的时候会出现问题,

// 所以可以先给每个数值括起来分别*10 之后再/10 就可以转换为整数类型。

vara = (0.1*10+0.2*10)/10;

console.log(a);

console.log(a==3);

2、// =--赋值  ==--值等于   ===--绝对等于恒等于值和类型完全一致

console.log(a=2);

// 把2赋值给a  输出a

console.log(a=="2");

// 判断值是否相等

 

// 以下三种类型为绝对相等  恒等于的案例

console.log(a==="2");

// 区别:类型不一样

console.log(a===3);

// 区别:类型一样、数值不一样

console.log(a===2);

// 完全相等也是恒等于

 

// %==取余

// js 当中有余数这一说,但是其他的会有(标准的语言)

// 因为JS 中整数和小数都有余数

1、在Javascript中,在语句执行中,%代表取模,俗称取余数,例如

10%10

return value: 0

10%20

return value: 10

2、在浏览器地址编码中,%可以代表一个编码的开始,例如

%20         代表的是空格

Javascript脚本语言同其他语言一样,有它自身的基本数据类型,表达式和算术运算符

及程序的基本程序框架。Javascript提供了四种基本的数据类型和两种特殊数据类型用来处理数据和

文字。而变量提供存放信息的地方,表达式则可以完成较复杂的信息处理。

扩展资料:

JavaScript脚本语言具特点:

1、脚本语言。JavaScript是一种解释型的脚本语言,C、C++等语言先编译后执行,而JavaScript是在程序的运行过程中逐行进行解释。

2、基于对象。JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。

3、简单。JavaScript语言中采用的是弱类型的变量类型,对使用的数据类型未做出严格的要求,是基于Java基本语句和控制的脚本语言,其设计简单紧凑。

4、动态性。JavaScript是一种采用事件驱动的脚本语言,它不需要经过Web服务器就可以对用户的输入做出响应。在访问一个网页时,鼠标在网页中进行鼠标点击或上下移、窗口移动等操作JavaScript都可直接对这些事件给出相应的响应。

5、跨平台性。JavaScript脚本语言不依赖于操作系统,仅需要浏览器的支持。因此一个JavaScript脚本在编写后可以带到任意机器上使用,前提上机器上的浏览器支 持JavaScript脚本语言,目前JavaScript已被大多数的浏览器所支持。 

不同于服务器端脚本语言,例如PHP与ASP,JavaScript主要被作为客户端脚本语言在用户的浏览器上运行,不需要服务器的支持。所以在早期程序员比较青睐于JavaScript以减少对服务器的负担,而与此同时也带来另一个问题:安全性。

而随着服务器的强壮,虽然程序员更喜欢运行于服务端的脚本以保证安全,但JavaScript仍然以其跨平台、容易上手等优势大行其道。同时,有些特殊功能(如AJAX)必须依赖Javascript在客户端进行支持。随着引擎如V8和框架如Node.js的发展,及其事件驱动及异步IO等特性,JavaScript逐渐被用来编写服务器端程序。

参考资料来源:百度百科-javascript

 

 

// parseInt 转化--取整 81.5 取整是 81 在遇到非数值的直接干掉,舍掉。

// parseFloat   直接转对应小数

// isNaN not a Number 判断是否为数值当为true时,非数值;当为false时,为数值。

 

vara = parseInt("67a.5");

console.log(a);

// 怎样转换四舍五入  另外+0.5 当够1的时候直接进一如果不够1 则直接舍掉

vara = parseInt(67.5+0.5);

console.log(a);

 

 

// 函数

// 带参数带返回值

functionsum(a,b){

    returna+b;

}

varb=sum(4,5);

console.log(b);

// 另

functionsum(a,b){

    returna+b;

    console.log(arguments);

    // arguments 数组所有用户赋给的数组、所有的参数

    // arguments 是伪数组/伪数类型、不是真正的数组,可以使用下标,严格来说它是对象

    // ...  它是没有赋过值的

}

varb=sum(4);

console.log(b);

// NaN 是非数值

 

// 普及知识点  数组 Array()在后台编程语言中写几就是几、但是在JS中可以无线的增加写

vararr= newArray(3);

arr[0]=1;

arr[1]=2;

arr[2]=3;

console.log(arr);

 

// 数组里面可以放任意类型 (但是一般不这样做)

vararr=[1,"你",3]

console.log(arr);

 

// shift 头部添加  unshift 头部删除

// arr.shift()  在首部删除,第一个数值()中的数据没有太大意义

// arr.unshift()   添加在第一个位置数值()中数据是多少添加几

// arr.push()   在尾部删除()中的数据没有太大意义

// arr.pop()    在尾部删除数值()中数据是多少添加几

vararr = [1,2,3,4,5];

arr.pop(0)

console.log(arr);

// splice()  有三个位置;第一个是开始位置  第二个是:删除个数  第三个是:(后边的所有数据在同一个空的地方)...添加数据

arr.splice(2,1,9);

console.log(arr);

 

 

上一篇:c# 枚举的定义,枚举的用法,获取枚举值


下一篇:js获取当前域名及获取页面完整地址并做判断