1.JavaScript 数据类型有哪些?

JavaScript 变量能够保存多种数据类型:数值、字符串值、数组、对象等等:

var length = 7;                             // 数字
var lastName = "7"; // 字符串
var cars = ["1", "2", "3"]; // 数组
var x = {firstName:"1", lastName:"2"}; // 对象

复杂数据

typeof 运算符可返回以下两种类型之一:

function

object

typeof {name:'1', age:2} // 返回 "object"
typeof [1,2,3,4] // 返回 "object"
typeof null // 返回 "object"
typeof function myFunc(){} // 返回 "function"

原始数据

typeof 运算符可返回以下原始类型之一:

string

number

boolean

undefined

Undefined 与 Null 的区别

Undefined 与 null 的值相等,但类型不相等

typeof undefined              // undefined
typeof null // object
null === undefined // false
null == undefined // true

实例

var person = null;           // 值是 null,但是类型仍然是对象

undefined 清空对象:

实例

var person = undefined;     // 值是 undefined,类型是 undefined

空值

空值与 undefined

var car = "";                // 值是 "",类型是 "string"

Undefined

在 JavaScript 中,没有值的变量,其值是 undefined。typeof 也返回 undefined。

任何变量均可通过设置值为 undefined 进行清空。其类型也将是 undefined。

typeof 运算符对数组返回 “object”,因为在 JavaScript 中数组属于对象。

JavaScript 布尔值

布尔值只有两个值:true 或 false。

JavaScript 数组

JavaScript 数组用方括号书写。

数组的项目由逗号分隔。

JavaScript 数值

JavaScript 只有一种数值类型。

JavaScript 字符串值

字符串(或文本字符串)是一串字符

JavaScript 基本数据类型

基本数据类型有五种:字符串(String)、数字(Number)、布尔(Boolean)、空(Null)、未定义(Undefined)。

复合数据类型

对象(Object)、数组(Array)、函数(function)。

JavaScript基本数据类型

(1)数值类型

(2)布尔类型

(3)字符串类型

(4)Undefined类型

(5)Null类型

2.JavaScript 保留关键字有哪些?

JavaScript 保留关键字

Javascript 的保留关键字不可以用作变量、标签或者函数名。

abstract arguments boolean break byte

case catch char class* const

continue debugger default delete do

double else enum* eval export*

extends* false final finally float

for function goto if implements

import* in instanceof int interface

let long native new null

package private protected public return

short static super* switch synchronized

this throw throws transient true

try typeof var void volatile

while with yield

[外链图片转存失败(img-X5cOzGEk-1564283235118)(https://upload-images.jianshu.io/upload_images/11158618-a581a35e2c7816c0.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

JavaScript 对象、属性和方法

Array Date eval function hasOwnProperty

Infinity isFinite isNaN isPrototypeOf length

Math NaN name Number Object

prototype String toString undefined valueOf

[外链图片转存失败(img-gAEpGYNe-1564283235122)(https://upload-images.jianshu.io/upload_images/11158618-58c954e4814ac40e.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

JavaScript 所有关键字:

break

case

catch

continue

default

delete

do

else

finally

for

function

if

in

instanceof

new

return

switch

this

throw

try

typeof

var

void

while

with

throw 与 try…catch…finally:操作异常

in:与for 一起使用用于遍历对象的属性名

instanceof :返回的是布尔值,而typeof 返回的是几种数据类型的字符串值。

JavaScript 关键字

JavaScript 关键字必须以字母、下划线(_)或美元符($)开始。

[外链图片转存失败(img-DxKXLnPs-1564283235123)(https://upload-images.jianshu.io/upload_images/11158618-e1e19dcf10615316.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

3.比较表达式

[外链图片转存失败(img-wRgnoYrE-1564283235139)(https://upload-images.jianshu.io/upload_images/11158618-dbe3532079d22f38.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

4.判断为0

[外链图片转存失败(img-a8UYgnLC-1564283235142)(https://upload-images.jianshu.io/upload_images/11158618-6e63985bfa1e1648.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

5.result的值

[外链图片转存失败(img-pQiYJVSx-1564283235144)(https://upload-images.jianshu.io/upload_images/11158618-cfdeec32503f5b19.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

6.result的值

[外链图片转存失败(img-N1JnCLVw-1564283235145)(https://upload-images.jianshu.io/upload_images/11158618-ad348f55a1d0b7ee.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

7.value的值

[外链图片转存失败(img-8igAsooG-1564283235148)(https://upload-images.jianshu.io/upload_images/11158618-3e6518ae861bb30b.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

8. 函数值

[外链图片转存失败(img-3iFeGdnn-1564283235153)(https://upload-images.jianshu.io/upload_images/11158618-ca204f3336d57a6e.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

9.result的值

[外链图片转存失败(img-QleKkxyW-1564283235154)(https://upload-images.jianshu.io/upload_images/11158618-304cd64be7e7f46d.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

10.返回前一个浏览的页面

back()方法,加载 history 列表中的前一个 URL。

语法:

window.history.back();

比如,返回前一个浏览的页面,代码如下:

window.history.back();

back()相当于go(-1),代码如下:

window.history.go(-1);

在HTML文档对象模型中,history对象的()用于加载历史列表中的下一个URL页面。

forward()

11.结果

[外链图片转存失败(img-bFT1heaX-1564283235155)(https://upload-images.jianshu.io/upload_images/11158618-d6937d120edef9bd.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

Math.floor

document.write(Math.floor(0.6) =0

document.write(Math.floor(1.40) =1

求一个最接近它的整数,它的值小于或等于这个浮点数

12.常见的HTTP状态码(HTTP Status Code)

常见状态吗:400(请求无效),401(需要权限),500(服务器错误)

onreadystatechange 存储函数(或函数名),每当 readyState 属性改变时,就会调用该函数。

readyState

存有 XMLHttpRequest 的状态。从 0 到 4 发生变化。

readyState

XMLHttpRequest对象的status属性状态吗

200 服务器正常处理了请求并响应

404 请求的页面(资源)没有找到

403 没有权限访问请求的页面(资源)

405 页面(资源)不接收该请求方式

408 请求超时

500 服务器处理请求时遇到错误(可能因为应用程序抛出异常导致)

502 上游服务器和网关/代理不同意的协议交换数据

503 服务器暂时不可用

XMLHttpRequest的属性与状态码

XMLHttpRequest对象有一个属性可以获得服务器传回的HTTP状态码

onreadystatechange:

每次状态改变所触发事件的事件处理程序

readyState:对象状态值

responseText:从服务器进程返回的数据的字符串形式

status:从服务器返回的数字代码

responseXML:从服务器进程返回的数据的字符串形式

13.cookie的生存周期的关键字

cookie对象的Expires属性用来设置当前cookie的存活时间。

在默认情况下,cookie是临时存在的。在一个浏览器窗口打开时,可以设置cookie,只要该浏览器窗口没有关闭,cookie就一直有效,而一旦浏览器窗口关闭后,cookie也就随之消失。

为cookie设置一个生存期

所谓生存期也就是cookie的终止日期,在这个终止日期到达之前,浏览器随时都可以读取该cookie。一旦终止日期到达之后,该cookie将会从cookie文件中删除。

14.数组用什么方法可以将数组中的元素连成一个字符串

join() 方法用于把数组中的所有元素放入一个字符串

15.x值

[外链图片转存失败(img-YFu9kkTo-1564283235158)(https://upload-images.jianshu.io/upload_images/11158618-12454639ac05bc21.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

[外链图片转存失败(img-yYimj8ax-1564283235159)(https://upload-images.jianshu.io/upload_images/11158618-5825eedef9b84c2c.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

都为undefined

16. 求值

[外链图片转存失败(img-Bdi8tgbf-1564283235160)(https://upload-images.jianshu.io/upload_images/11158618-b08e05db2cabaa3a.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

[外链图片转存失败(img-Tmrztspr-1564283235165)(https://upload-images.jianshu.io/upload_images/11158618-3883befea30c8672.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

17.数组去除数组中重复的元素

Array.prototype.method1 = function() {
var arr=[];
for(var i = 0; i<this.length; i++) {
if(arr.indexOf(this[i] == -1) {
arr.push(this[i]);
}
}
}

[外链图片转存失败(img-t5CE4ymB-1564283235167)(https://upload-images.jianshu.io/upload_images/11158618-e5060aa50cd7b7e0.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

[外链图片转存失败(img-1pZHDaUP-1564283235170)(https://upload-images.jianshu.io/upload_images/11158618-a71a5ae1cfa707be.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

javaScript实现去除数组中重复的元素

1.先排序

2.遍历数组每个元素

3.让前一个元素与后一个元素相比较,若相等,删除前一个

4.每次删除元素会使数组长度减一,再次循环时会少对比一个 ,所以删除后i–

var arr=[11,32,3,4,2,32,4,12,3,11,23];
arr.sort(function(x,y){
return x-y;
});

[外链图片转存失败(img-Tlv98dj3-1564283235171)(https://upload-images.jianshu.io/upload_images/11158618-bc6504739e7889d1.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

for(var i=0; i<arr.length; i++){
if(arr[i] == arr[i+1]){
arr.splice(i,1);
i--;
}
}
console.log(arr);

[外链图片转存失败(img-7tVnTbXz-1564283235175)(https://upload-images.jianshu.io/upload_images/11158618-a5611e1e86dc4cee.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]


若本号内容有做得不到位的地方(比如:涉及版权或其他问题),请及时联系我们进行整改即可,会在第一时间进行处理。


请点赞!因为你们的赞同/鼓励是我写作的最大动力!

欢迎关注达叔小生的简书!

这是一个有质量,有态度的博客

[外链图片转存失败(img-JJzTsePp-1564283235176)(https://upload-images.jianshu.io/upload_images/11158618-9ab0d3fef85d80ce?imageMogr2/auto-orient/strip|imageView2/2/w/1240)]

最新文章

  1. VS2012程序打包部署详解
  2. bzoj3822: 文学
  3. 【drp 9】Servlet生命周期
  4. 一步步学Mybatis-实现简单的分页效果逻辑 (5)
  5. mapping 详解2(field datatypes)
  6. sigar监控
  7. BZOJ3433: [Usaco2014 Jan]Recording the Moolympics
  8. 反引号backtick中输入多个命令
  9. C# 导出Excel Aspose.Cells
  10. Joseph(约瑟夫环)
  11. c语言库函数
  12. linux下安装TensorFlow(centos)
  13. Python3 ——斐波那契数列(经典)
  14. Linux查看实时网卡流量的几种方式
  15. pycharm 中自动补全代码提示前符号 p,m ,c,v, f 是什么意思
  16. linux命令之pssh命令
  17. typescript handbook 学习笔记3
  18. 3.2Python数据处理篇之Numpy系列(二)--- ndarray数组的创建与变换
  19. url请求老是有 之前的部分url
  20. 用Fiddler查看 Android/iOS 网络请求

热门文章

  1. Maven打包时集成依赖项或复制依赖项到指定目录
  2. jquery datatable如何动态分页
  3. linux查看log软件
  4. SAP错误消息调试之七种武器:让所有的错误消息都能被定位
  5. Java文件流下载并提示文件不存在
  6. js 获取 对象 属性名称(转载)
  7. BootstrapValidator 表单验证超详细教程
  8. 从零搭建consul
  9. UART 串口示例代码
  10. 嵌入式LINUX启动时间优化