起源

JavaScript诞生于1995年,前期主要用于处理网页中的前端验证。
ECMAScript是一个JavaScript标准,而这个标准需要由各个厂商去实现。

一个完整的JavaScript应该由以下三个部分构成:

  • ECMAScript :标准
  • DOM:文档对象模型
  • BOM:浏览器对象模型

JS的特点:

  • 解释性语言
  • 动态语言
  • 基于原型的面向对象
  • 类似于C和Java的语法结构

/*可以发出警告框*/
alert("警告");
/*可以向body中输出内容*/
document.write("内容");
/*可以向控制台输出内容*/
console.log("内容");

JS代码写在什么地方:

1.可以将JS代码编写到标签的属性中:

<body><button onclick="alert('你点我干嘛');">点我一下</button><a href="javascript:alert('你真的点啊');">点我点我</a>
</body>

但是不推荐这种结构和行为耦合的方式。
2.可以写在script标签中。
3.可以将代码编写在外部js文件中,然后通过script标签引入。

<script type="text/javascript" src="new_file.js"></script>

script标签一旦引入外部JS文件,则在内部写的代码将被忽略。
如果需要可以创建一个新的script标签用于编写内部代码。

多行注释/*内容*/
单行注释//

JS中:

  • 严格区分大小写
  • 每条语句以分号(;)结尾
  • 忽略多个空格和换行,可以用于格式化
  • 使用var 关键字来声明一个变量
var a;
a=123;
var b = true;
console.log(a);
console.log(typeof b);var a = 456;
  • 标识符:函数名、变量名、属性名等,

    • 标识符中可以含有字母、数字、_、$
    • 不能以数字开头
    • 不能是ES中的关键字
    • 一般驼峰命名法

JS底层保存标识符实际上是采用Unicode编码,所以,理论上讲UTF-8中含有的所有内容都可以作为标识符。

六种数据类型:

  • String
  • Number(包括整数和浮点数)
  • Boolean
  • Null(用来表示一个空对象)
  • Undefined(当声明一个变量但是未赋值时)
  • Object

可以使用运算符 typeof来检查一个变量的类型。

console.log(typeof a);

强制类型转换:

将其他数据转换为String:

  • 方法一: 调用被转换数据类型的toString()方法,该方法不会影响原数据的类型,并且将转换后的值返回,这种方法不能转换nullundefined两种类型的数据。
b = a.toString();
  • 方法二:调用String()函数,并将被转换的数据作为参数传递给函数。这种方式所以可以转换所有类型的数据。
b = String(a);

将其他数据转换成Number:

  • 方法一:使用Number() 函数
    字符串转数值,如果是纯数字字符串,则直接转换;如果字符串中有非数字内容,则转换为NaN;如果字符串是一个空的字符串,则转换为0;如果是被转换的是布尔型,那么ture转换成1,false转换为0;null转数字将转为0;undefined转数字将转为NaN

  • 方法二:

    • parseInt()函数,可以把一个字符串中有效的整数内容取出来。
a = "123a567";
b = parseInt(a);

则b的内容为数值123

  • parseFloat()函数:类似parseInt,只不过可以转换小数。

如果对非字符串类型的数据使用上两个函数,则会将数据先转换成字符串再进行操作。

在JS中,如果需要表示16进制的数字,则需要以"0X"开头;如果需要表示8进制数字,则需要以"0"开头。这时候有的字符串比如"070"会把浏览器搞晕,在将这种字符串转换成数字的时候,可以给parseInt()函数传入第二个参数 “10”,表示以转换结果以十进制显示。

a = "070";
b = parseInt(a, 10);

转换为布尔值

  • 直接使用Boolean()函数,非零即为真。

JS中可以表示的数字最大值为:`Number.MAX_VALUE`,比它大的,会返回一个`Infinity`,表示正无穷。`Number.MIN_VALUE`表示最小的正值。`NaN`表示Not a number。

  • 在字符串中,我们可以使用\作为转义字符:
str = "我说:\"今天天气真不错!\"";

“表示”
\n表示换行
\t表示制表符
\表示\

如果使用JS进行浮点数运算,可能得到一个不精确的结果。

《尚硅谷最新版JavaScript基础全套教程完整版(140集实战教学,JS从入门到精通)》视频1相关推荐

  1. 尚硅谷最新版JavaScript基础全套教程完整版(p79-p90)

    尚硅谷最新版JavaScript基础全套教程完整版(140集实战教学,JS从入门到精通) 一.函数的方法 1.call()和 apply()方法 -这两个方法都是函数对象方法,需要通过函数对象来调用 ...

  2. JavaScript(基础、高级)笔记汇总表【尚硅谷JavaScript全套教程完整版】

    目   录 前言 JavaScript(基础+高级)配套资料下载 JavaScript 基础 学习地址 学习笔记 day 05(P001-P006)[2016.11.22] day 06(P007-P ...

  3. 尚硅谷Vue2.0+Vue3.0全套教程视频笔记 + 代码 [P001-050]

    视频链接:尚硅谷Vue2.0+Vue3.0全套教程丨vuejs从入门到精通_哔哩哔哩_bilibili P1-50:当前页面.  P51-100:尚硅谷Vue2.0+Vue3.0全套教程视频笔记 + ...

  4. 【Vue学习笔记】尚硅谷Vue2.0+Vue3.0全套教程丨vue.js从入门到精通

    尚硅谷Vue2.0+Vue3.0全套教程丨vue.js从入门到精通 1.Vue核心部分 1.1 Vue简介 1.1.1 Vue是什么? Vue是一套用于构建用户界面的渐进式JavaScript框架. ...

  5. [Vue]学习笔记目录 【Vue2与Vue3完结】 (尚硅谷Vue2.0+Vue3.0全套教程丨vuejs从入门到精通)

    文章目录 前言 遇见的问题及其解决方案 之前笔记 Vue2 Vue3 前言 本笔记根据如下笔记和视频进行整理 老师的课件笔记,不含视频 https://www.aliyundrive.com/s/B8 ...

  6. 视频教程-大型Java项目视频教程_王勇老师DRP项目教程完整版292集-Java

    大型Java项目视频教程_王勇老师DRP项目教程完整版292集 动力节点王勇老师,CCTV<影响力对话>栏目特约嘉宾,Java培训知名讲师,中国Java培训领军人物,北京动力节点创始人,董 ...

  7. python入门教程完整版(懂中文就能学会)-Python入门教程完整版(懂中文就能学会)...

    不过小编的内心是强大的,网友虐我千百遍,我待网友如初恋,因为今天又给大家带来了干货,Python入门教程完整版,完整版啊!完整版! 言归正传,小编该给大家介绍一下这套教程了,希望每个小伙伴都沉迷学习, ...

  8. SpringBoot笔记汇总【动力节点SpringBoot全套教程完整版】

    前言 动力节点的springboot笔记汇总,公开免费. Spring Boot教程 学习地址 动力节点springboot视频教程-专为springboot初学者打造的教程_哔哩哔哩_bilibil ...

  9. python入门教程完整版(懂中文就能学会)-Python入门教程完整版400集(懂中文就能学会)快来带走...

    为了感谢大家的关注与支持, 小编今天给大家分享一套高老师的python400集视频教程,里面包含入门进阶,源码,实战项目等等,,不管你是正在学习中,还是想要学习的,通通来吧 肯定不会让你失望.活动仅限 ...

  10. python学生名片系统_Python入门教程完整版400集(懂中文就能学会)快来带走

    如何入门Python?权威Python大型400集视频,学了Python可以做什么? 小编今天给大家分享一套高老师的python400集视频教程,里面包含入门进阶,源码,实战项目等等,,不管你是正在学 ...

最新文章

  1. WebDriverAgent框架搭建
  2. php微信小程序会话保持,微信小程序保持session会话的方法
  3. word中格式化姓名的输出
  4. 【Java】JDBC连接MySQL驱动
  5. 22. GD32F103C8T6入门教程-RTC的时间设置、读取日历转换
  6. ()IT 职场经验)一位10年Java工作经验的架构师的经验分享,感觉很受用。
  7. TIOBE 3 月编程语言:Swift 一路低走,Java 份额大跌
  8. 教你一招解决Git时提交到多个远程仓库
  9. mysql数据库两表建立联系_在MySQL数据库建立多对多的数据表关系
  10. Open Inventor:Windows下编译安装Coin3D
  11. 十天学会php之第八天
  12. 宏想固态无法格式化,SM2258XT主控开卡成功经验,SM2259XT可参考
  13. netperf的安装、性能测试、参数、启动报错的坑、实例
  14. [内附完整源码和文档] 基于MySql和JSP的题库管理系统
  15. 一峰说:SpringCloud的基础了解和使用
  16. 杭州造云记 | 甲子光年
  17. 树状数组(Binary Indexed Tree),看这一篇就够了
  18. CSS font-size单位
  19. 银河麒麟踩坑笔记——tty、单用户模式
  20. 嵌入式系统课程设计:基于JSoup的鸿蒙教务查询软件

热门文章

  1. linux下游戏制作工具,在Linux下可用Wine安装和运行D5Power游戏制作工具、蜂窝助手...
  2. 超详细SPSS主成分分析计算指标权重(一)
  3. WS2811单线传输三通道LED驱动控制专用芯片
  4. vivo X7(全网通)线刷救砖教程
  5. 一个简单的姓名生成器
  6. linux localhost发邮件失败,测试邮件系统:telnet localhost 25时的问题~
  7. 火狐浏览器配置webDriver
  8. STM32串口通信UARTx
  9. Oracle 重置过期密码,Oracle重置过期的密码
  10. python字典存储数据的形式_python字典的常用操作,数据类型划分