JavaScript知识(二)
原文:JavaScript知识(二)

你要保守你心,胜过保守一切,因为一生的果效,是由心发出的。————O(∩_∩)O...

...O(∩_∩)O...老师因有事下午没来上课,今天就只把中午讲的知识总结一下。由于昨天只是讲了JavaScript的一些基础入门知识点,所以今天就详细地总结一下Javascript的基础。

Javascript语言组成:

ECMAScript:描述了该语言的语法和基本对象。
DOM(Document Object Model):文档对象模型,描述处理网页内容的方法和接口。
BOM(Browser Object Model) :浏览器对象模型描述与浏览器进行交互的方法和接口。
Javascript语言特点:
1.是一种解释性脚本语言(代码不进行预编译)。
2.主要用来向HTML(标准通用标记语言下的一个应用)页面添加交互行为。
3.可以直接嵌入HTML页面,但写成单独的js文件有利于结构和行为的分离。
4.跨平台特性,在绝大多数浏览器的支持下,可以在多种平台下运行(如Windows、Linux、Mac、Android、iOS等)。
Javascript数据类型
1.命名规则(和C#基本一样)
只能由字母、数字、$和下划线组成,并且第一个字符必须是字母或下划线。
区分大小写,不区分双引号和单引号。
不能使用关键字作为变量名。
Javascript脚本语言中只提供了6种类型:
  • Undefined   未被定义类型
  • Boolean      布尔类型
  • String         字符串类型
  • Number      数字类型
  • Object        引用类型
  • Function     方法类型
注:在使用变量之前,必须先进行变量的声明和定义,声明变量使用关键字var,可以同时声明多个变量
2.运算符(和C#基本一样)
Javascript语言的运算符主要分为:算数运算符、比较运算符、逻辑运算符。
算术运算符包括:+、-、*、/、%、++、--
比较运算符包括:>、<、==、>=、!=
逻辑运算符包括:||(或)、&&(和)、!(非)
 注:“=”表示赋值  ““==”表示两边比较的值,"==="表示两边的值必须是同一类型
3.程序结构(和C#基本一样)
在Javascript脚本语言中,只提供了两种结构:条件结构(If、Switch-Case)、循环结构(For、While、do-while)
查看类型
  • 当text=0时,打印出Number;当为空字符串时打印出string,为null打印出object
var text = 0;alert(typeof text)

类型转换(JS中可以把任意类型转换为Boolean类型,数字类型除了0之外都是true,反之是false)

  • 如果不赋值或赋值null或赋值undefined,则都是打印出的true,
var u
        alert(u == undefined);

  • 字符串转布尔类型,字符串非空时返回True,否则返回False
var s = "hello";var b = Boolean(s);alert(b);

  • 空值转换数字类型(Number())
var b = null;alert(Number(b));

  • 转换浮点类型(ParseFloat()、ParseInt()转换整数类型)
 var s = "123.567";alert(parseFloat(s));

  • 凡是和字符串相连的都将转换为字符串
      var name = 'Join';var num = 123;alert( typeof  (name+num));

  • 任意类型都可以转字符串(tostring())

toLocaleString()转本地语言          tostring(2)转为二进制

var b = true;alert(b.toString());alert(name.toLocaleString());

  • function方法

任何方法都以function开头。可以在方法里用return返回,并在方法外接收。

 function SayHi(name, message){alert("Hello"+name+"mesg:"+message);}SayHi("Rocky", "123");

调用方法时,参数要和方法体里一一相对。

function howManyArgs(){alert(arguments[0]+arguments[1]+arguments[2]);}howManyArgs(1,2,3);

注:在Javascript中没有方法重载的概念,名字相同,参数不同,也将会打印出最后一个方法。

程序结构中没有块级作用域(可以在循环语句外调用i)

for (var i = 0; i < 10; i++){}alert(i);

数组类型

定义数组的几种方法

1. var 数组名=new Array(具体长度)可以用for遍历出来,也可以直接alert(数组名)打印出来。

  var colors = new Array(3);//设置数组的长度。colors[0] = "red";colors[1] = "blue";colors[2] = "yellow";for (var i = 0; i <colors. length; i++)//遍历出来
        {alert(colors[i]);}

2.var 数组名=new Array(值1,值2...值n)

var colors1 = new Array("red", "blue", "yellow");for (var i = 0; i < colors1.length; i++){alert(colors[i]);}

3.可以简写:var 数组名=[值1,值2...值n]。

push(后进后出,追加到数组后面)

pop(从数组的末尾移除最后一项)

shift(取得数组中的第一项)

        var colo = ["red", "blue", "yellow"];colo.push("张三", "李四");        colo.pop();                      alert(colo.shift());            alert(colo);

substring()第二个参数指定的是字符串最后一个字符后面的位置

substr(n,m)n开始位置,m截取长度

var str = "Woshiunib";alert(str.substring(1, 3));alert(str.substr(1, 3)); 

排序:

 升序(sort())

var values = [1, 3, 2, -9, 5, 11];function compare(v1, v2) {if (v1 < v2) {return -1;}else if (v1 > v2) {return 1;}else {return 0;}}values.sort(compare);     alert(values);

降序:在方法体里取反。

var values = [1, 3, 2, -9, 5, 11];function compare(v1, v2) {if (v1 < v2) {return 1;}else if (v1 > v2) {return -1;}else {return 0;}}values.sort(compare);     alert(values);

倒序:(reverse())

var values = [1, 3, 2, -9, 5, 11];function compare(v1, v2) {if (v1 < v2) {return 1;}else if (v1 > v2) {return -1;}else {return 0;}}  values.reverse(values);alert(values);

判断是否为数字(用IsNaN())

var num1 = "Hello";alert(isNaN(num1));

昨天由于时间的关系,没有写完,所以这是补的昨天的博客总结,今天晚上在继续吧!加油!O(∩_∩)O...

posted on 2015-01-13 14:15 NET未来之路 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/lonelyxmas/p/4221195.html

JavaScript知识(二)相关推荐

  1. JavaScript进阶(二)

    JavaScript进阶(二) 2019版黑马程序员javaScript进阶面向对象ES6 122集教程,哔哩哔哩链接:https://www.bilibili.com/video/BV1Kt411w ...

  2. JavaScript入门(二)

    JavaScript入门(二) 哔哩哔哩链接:https://www.bilibili.com/video/BV1YW411T7GX?spm_id_from=333.999.0.0 七.代码讲解部分 ...

  3. CV:计算机视觉技术之图像基础知识(二)—图像内核的可视化解释

    CV:计算机视觉技术之图像基础知识(二)-图像内核的可视化解释 目录 图像内核的可视化解释 测试九种卷积核 官方Demo DIY图片测试 DIY实时视频测试 相关文章 CV:计算机视觉技术之图像基础知 ...

  4. CV:计算机视觉技术之图像基础知识(二)—以python的skimage和numpy库来了解计算机视觉图像基础(图像存储原理-模糊核-锐化核-边缘检测核,进阶卷积神经网络(CNN)的必备基础)

    CV:计算机视觉技术之图像基础知识(二)-以python的skimage和numpy库来了解计算机视觉图像基础(图像存储原理-模糊核-锐化核-边缘检测核,进阶卷积神经网络(CNN)的必备基础) 目录 ...

  5. Javascript知识——事件

    O(∩_∩)O~~又是新的一周开始了,今天还是在继续学习Javascript知识,今天主要讲了事件的知识.现在就总结下吧. 事件 事件一般是用于浏览器和用户操作进行交互.最早是 IE 和 Netsca ...

  6. (五)JS基础知识二(通过图理解原型和原型链)【三座大山之一,必考!!!】

    JS基础知识二(原型和原型链) 提问 class 继承 类型判断(instanceof) 原型 原型关系 基于原型的执行规则 原型链 说明 提问 如何准确判断一个变量是不是数组 class的原型本质 ...

  7. Javascript 对象二(Number、String、Boolean、Array、Date、Math、RegExp)

    Javascript 对象二(Number.String.Boolean.Array.Date.Math.RegExp) Number 数字 对象 String 字符串 对象 Boolean 布尔 对 ...

  8. oracle:oracle基础知识(二)

    oracle基础知识(二)笔记:高级查询 文章目录 分组查询 多属性分组语法: 过滤查询 group by 语句增强 sqlplus报表功能 多表查询 等值连接 外连接 自连接 子查询 子查询中的空值 ...

  9. Javascript面向对象二

    Javascript面向对象二 可以通过指定原型属性来对所有的对象指定属性, Object.prototype.name="zhangsan"; Object.prototype. ...

最新文章

  1. 《C#多线程编程实战(原书第2版)》——第3章 使用线程池 3.1 简介
  2. 物理光学 计算倏逝波/渐逝波在界面上存在的范围
  3. java打地鼠游戏-有背景音乐有图
  4. 程序员离职后躲老家山洞 2 年,敲出 45 万行代码...
  5. 深入理解 Linux的 I/O 系统
  6. android高级编程实操期末机试试题,《网络高级编程》201001机考试题A
  7. java怎么拦截数据库查询结果_关于mybatis拦截器,有谁知道怎么对结果集进行拦截,将指定字段查询结果进行格式化...
  8. Zilliqa的设计构思 第1部分:网络分片
  9. 案例:手动输入一个字符串,打散放进一个列表,小写字母反序 大写字母保持不变...
  10. 1602显示字符串的C语言程序,LCD1602程序显示字符串
  11. 手把手教你如何进行内网渗透
  12. MagicDraw 18.5 SP4
  13. Linux网络编程 ——Select机制
  14. 软件项目风险控制-公益讲座视频,供大家学习参考。
  15. 【1024个人爆款文章】Android 安卓原生UI实现游戏《俄罗斯方块》,算法太多,把我写崩溃了,附源码
  16. JavaWeb-10课Filter过滤器
  17. DenseBox: Unifying Landmark Localization with End to End Object Detection
  18. ada首届_首届资产商店竞赛获胜者访谈
  19. conda 重命名 环境 (通过clone旧环境来创建新环境,然后删除旧环境)
  20. Vite css 热重载失效

热门文章

  1. java工具keytool生成p12数字证书文件
  2. Android开发笔记(一百四十五)仿应用宝的垃圾清理动画
  3. PiFlow v0.5 发布:大数据流水线系统
  4. python基础知识--标志位的设定
  5. 一句话总结.Net下struct和class内存分配方面的区别
  6. 惠普在安全领域发力 收购大数据加密企业
  7. 下载所有需要的rpm文件路径
  8. java设计模式学习 ----- 单例模式(Singleton)
  9. SDWebImage之工具类
  10. Android控件学习笔记之 ListView