我要成神,成为前后端都会的神
《JavaScript百炼成仙》是清华大学出版社出版的一部图书,作者是杨逸飞JavaScript百炼成仙_百度百科《JavaScript百炼成仙》是清华大学出版社出版的一部图书,作者是杨逸飞。https://baike.baidu.com/item/JavaScript%E7%99%BE%E7%82%BC%E6%88%90%E4%BB%99/57371038我这里是我读这本书的读书笔记
(本人目前做java后端开发,算是有一些代码基础,笔记仅仅记一些要点,可能不太适合没接触过代码的朋友们)
OK,废话不多说,开启成神之路
数据分两类:原生数据类型和对象数据类型
创建一个对象:
方法一
var container = {};
var container = {caoyao : "解毒草" ,feijian: "乌木剑"
};
方法二
var container = {};
container.caoyao = "解毒草";
container. feijian = "乌木剑";
如果对象用点号去访问一个根本不存在的属性会怎样?
var container = {};
container.caoyao = "解毒草";
container. feijian = "乌木剑";
console.log(container.danyao); //注意:丹药这个属性是不存在的
danyao这个属性不存在于container对象中,因此是未定义的,得到的结果就是undefined!
加餐时间到:
1、对于console.log()有小伙伴可能不熟悉,这里ai一下
console.log()
是JavaScript中用于在控制台输出信息的函数。它接受一个或多个参数,并将它们打印到控制台中。这在调试和开发过程中非常有用,可以帮助开发者查看变量的值、程序的执行流程以及调试信息。例如,你可以这样使用
console.log()
来输出一条消息到控制台:console.log("Hello, world!");
你也可以输出变量的值:
let x = 10; console.log("The value of x is:", x);
console.log()
还可以接受多个参数,它们会被以空格分隔并输出到同一行:let name = "Alice"; let age = 30; console.log("Name:", name, "Age:", age);
除了简单的文本和变量之外,
console.log()
还可以输出对象、数组和其他复杂数据类型的内容。
2、除了console.log,还有什么打印、或是弹窗的的方式
除了
console.log()
以外,JavaScript 还有一些其他的方式来输出信息或与用户交互:alert():弹出一个带有指定消息和一个确定按钮的警告框,通常用于向用户显示一条重要信息。
alert("This is an alert message!");
confirm():弹出一个带有指定消息、确定按钮和取消按钮的对话框,用于获取用户的确认或取消选择。
let result = confirm("Are you sure you want to delete this item?"); if (result) { // 用户点击了确定按钮 } else { // 用户点击了取消按钮 }
prompt():弹出一个带有指定消息和一个输入框的对话框,用于获取用户输入的信息。
let name = prompt("Please enter your name:", "John Doe"); if (name != null) { // 用户输入了名字 } else { // 用户点击了取消按钮 }
这些方法可以在网页上与用户进行交互,提供了一种简单而直接的方式来获取用户的输入或显示信息。但需要注意的是,它们会打断用户的操作流程,因此在使用时应该谨慎考虑,以确保良好的用户体验。
3、什么是原生数据类型
原生数据类型
原生数据类型,也称为基本数据类型,代表了JavaScript中的基本数据单位。它们是不可变的,这意味着不能改变其内部值。JavaScript有七个原生数据类型:
字符串(String):一系列字符的集合,用单引号或双引号包围。例如
'hello'
或"world"
。数值(Number):包含整数和浮点数。JavaScript中没有专门的整数类型,因此所有数值都是64位的双精度浮点数。
布尔值(Boolean):只有两个值:
true
和false
,用于逻辑判断。空值(Null):代表空或不存在的值。
null
通常用于指示一个对象或变量没有值。未定义(Undefined):当变量声明但未赋值时,其值是
undefined
。这意味着变量没有定义实际的内容。符号(Symbol):用于创建唯一标识符。符号在ES6(ECMAScript 2015)中引入,常用于定义对象的唯一属性或方法。
大整数(BigInt):可以处理大于
Number
类型最大值的整数。通过在数字后面加上n
可以创建一个BigInt
。
4、什么是对象数据类型
对象数据类型
对象数据类型是更复杂的数据结构,通常用于存储和组织相关的数据。对象数据类型可以变化,这意味着它们的内部状态可以被修改。以下是一些主要的对象数据类型:
对象(Object):键值对的集合。键通常是字符串,值可以是任何数据类型。对象用于组织相关数据,表示实体、配置或状态。
数组(Array):一种特殊的对象,其键是有序的整数索引。数组允许存储和访问数据的有序列表。
函数(Function):JavaScript中的函数是一等公民,意味着它们可以像其他值一样传递和操作。函数是对象,可以赋值给变量,作为参数传递,或作为返回值返回。
日期(Date):用于表示日期和时间。
Date
对象提供了多种处理日期和时间的方法。正则表达式(RegExp):用于处理正则表达式。可以用于匹配和搜索字符串。
错误(Error):用于表示异常和错误状态。
Error
对象可以用于处理程序中的异常。映射和集合(Map and Set):在ES6中引入。
Map
是一个键值对的集合,Set
是一个不重复值的集合。
5、有些小伙伴没听过ES6,这里ai一下:
ES6,也称为ECMAScript 2015,是JavaScript的第六个版本,是ECMAScript标准的一次重大更新。它引入了许多新的语言特性和改进,使得JavaScript更强大、更易于使用和理解。以下是ES6引入的一些主要特性:
箭头函数(Arrow Functions):提供了一种更简洁的函数定义语法,同时修复了传统函数中
this
关键字的作用域问题。模板字面量(Template Literals):允许在字符串中嵌入表达式,提供了更方便和可读的字符串拼接方式。
解构赋值(Destructuring Assignment):允许通过模式匹配来从数组和对象中提取值并赋给变量,使得代码更简洁。
默认参数(Default Parameters):允许为函数参数设置默认值,简化了函数调用时的参数传递。
展开运算符(Spread Operator):允许在函数调用、数组字面量和对象字面量中展开数组或对象,简化了数据的操作和传递。
剩余参数(Rest Parameters):允许将函数的剩余参数收集到一个数组中,使得函数可以接受任意数量的参数。
类和模块(Classes and Modules):引入了类的概念,提供了更简洁和面向对象的语法,同时也支持模块化的导入和导出。
Promise对象(Promises):用于处理异步操作的对象,提供了更优雅和可靠的异步编程方式。
新增的数据结构(New Data Structures):引入了
Map
、Set
、WeakMap
和WeakSet
等新的数据结构,使得数据处理更加灵活。模块加载器(Module Loader):定义了模块加载的标准,使得在浏览器和服务器端都可以使用统一的模块化开发方式。
这些特性使得ES6成为JavaScript发展史上的一个重要里程碑,为开发者提供了更多的工具和技术来构建复杂和可维护的应用程序。