Jscript函数的使用
- Jscript函数的使用 推荐度:
- 相关推荐
Jscript函数的使用
目录
js对不同数据类型的操作和具体处理方法的示例
不同数据类型的操作和具体处理方法:
js中用函数处理各类复杂数据结构的示例
js实现排序算法、搜索算法、数据结构、加密算法代码示例
1、排序算法 - 冒泡排序:
2、搜索算法 - 二分查找:
3、数据结构 - 链表:
4、加密算法 - RSA
js对不同数据类型的操作和具体处理方法的示例
JavaScript中有七种不同的数据类型:
- Number(数字)
- String(字符串)
- Boolean(布尔值)
- Symbol(符号)
- Object(对象)
- Function(函数)
- Undefined(未定义)
下面是一些常见操作和具体处理方法的示例:
-
Number:
- 加法:1 + 2 = 3
- 减法:5 - 2 = 3
- 乘法:3 * 4 = 12
- 除法:10 / 5 = 2
- 取余:10 % 3 = 1
-
String:
- 连接:"Hello, " + "world!" = "Hello, world!"
- 长度:"Hello, world!".length = 13
- 索引:"Hello, world!"[0] = "H"
- 切片:"Hello, world!".slice(7, 12) = "world"
-
Boolean:
- 与:true && false = false
- 或:true || false = true
- 非:!true = false
-
Symbol:
- 创建:let sym = Symbol("foo")
- 描述:sym.description = "foo"
-
Object:
- 属性:let obj = {name: "John", age: 30}; obj.name = "John"
- 键值对:obj["age"] = 30
- 方法:obj.greet = function() {console.log("Hello, my name is " + this.name);}; obj.greet() // "Hello, my name is John"
-
Function:
- 定义:function add(a, b) {return a + b;}
- 调用:add(1, 2) = 3
-
Undefined:
- 变量未赋值时:let x; console.log(x) // undefined
- 函数未返回值时:function doNothing() {} console.log(doNothing()) // undefined
注意:JavaScript中还有一个特殊的数据类型null,它表示一个空对象指针,可以用来明确地表示某些变量没有有效值。
- Null:
- 变量赋值为空对象指针:let x = null; console.log(x) // null
不同数据类型的操作和具体处理方法:
1、Number
let a = 1, b = 2;
console.log(a + b); // 3
console.log(a - b); // -1
console.log(a * b); // 2
console.log(a / b); // 0.5
console.log(a % b); // 1
console.log(Math.round(a / b)); // 1
2、String
let str1 = 'Hello, ';
let str2 = 'world!';
console.log(str1 + str2); // "Hello, world!"
console.log(str1.concat(str2)); // "Hello, world!"
console.log(str1.length); // 7
console.log(str1[0]); // "H"
console.log(str1.slice(2, 5)); // "llo"
3、Boolean
let isTrue = true;
let isFalse = false;
console.log(isTrue && isFalse); // false
console.log(isTrue || isFalse); // true
console.log(!isTrue); // false
4、Symbo
let sym1 = Symbol('foo');
let sym2 = Symbol('foo');
console.log(sym1 === sym2); // false
console.log(sym1.toString()); // "Symbol(foo)"
console.log(sym1.description); // "foo"
5、Object
let obj = {name: "John", age: 30};
console.log(obj.name); // "John"
console.log(obj["age"]); // 30
obj.greet = function() {console.log("Hello, my name is " + this.name);};
obj.greet(); // "Hello, my name is John"
6、Function
function add(a, b) {return a + b;
}
console.log(add(1, 2)); // 3
7、Undefined
let x;
console.log(x); // undefined
js中用函数处理各类复杂数据结构的示例
定义函数的基本语法如下:
function functionName(parameters) {// code to be executedreturn result;
}
例如,下面是一个简单的函数,用于计算两个数字的和:
function add(a, b) {return a + b;
}
调用函数的基本语法如下:
functionName(arguments);
例如,调用上面的 add 函数:
add(1, 2); // returns 3
使用函数可以处理各种复杂的数据结构。例如:
- 数组: 您可以定义一个函数来处理数组中的元素,例如过滤,映射,排序等
function filterArray(arr, callback) {let newArr = [];for(let i = 0; i < arr.length; i++) {if(callback(arr[i])) {newArr.push(arr[i]);}}return newArr; }let numbers = [1, 2, 3, 4, 5]; let evenNumbers = filterArray(numbers, function(number) {return number % 2 === 0; }); console.log(evenNumbers); // [2, 4]
- 对象: 您可以使用函数来遍历对象的属性,并执行特定的操作,例如计算总和或查找最大值
function sumProperties(obj) {let sum = 0;for(let property in obj) {if(obj.hasOwnProperty(property)) {sum += obj[property];}}return sum;
}let object = { a: 1, b: 2, c: 3 };
console.log(sumProperties(object)); // 6
总之,使用函数可以使代码更具可重用性和可维护性。可以使用函数来封装常用的操作,并在需要时重复使用。函数还可以接受参数,并返回结果,这样就可以在不同的场景中使用相同的代码。这对于处理复杂的数据结构是非常有用的,可以使用函数来组织和操作数据,并确保代码的可读性和可维护性。
js实现排序算法、搜索算法、数据结构、加密算法代码示例
1、排序算法 - 冒泡排序:
// 定义冒泡排序函数
function bubbleSort(arr) {// 遍历整个数组for (let i = 0; i < arr.length; i++) {// 比较相邻元素并交换位置for (let j = 0; j < arr.length - i - 1; j++) {if (arr[j] > arr[j + 1]) {let temp = arr[j];arr[j] = arr
2、搜索算法 - 二分查找:
// 定义二分查找函数
function binarySearch(arr, target) {// 设置初始查找范围let left = 0;let right = arr.length - 1;// 循环查找while (left <= right) {// 计算中间索引let mid = Math.floor((left + right) / 2);// 判断中间值是否等于目标值if (arr[mid] === target) {return mid;}// 如果中间值小于目标值,则在右半部分继续查找else if (arr[mid] < target) {left = mid + 1;}// 如果中间值大于目标值,则在左半部分继续查找else {right = mid - 1;}}// 如果未找到目标值,则返回-1return -1;
}// 使用示例
let numbers = [1, 2, 3, 4, 5];
console.log(binarySearch(numbers, 3)); // 2
3、数据结构 - 链表:
class Node {constructor(value) {this.value = value;this.next = null;}
}class LinkedList {constructor() {this.head = null;this.tail = null;this.length = 0;}// 在链表末尾添加元素append(value) {let node = new Node(value);if (!this.head) {this.head = node;this.tail = node;} else {this.tail.next = node;this.tail = node;}this.length++;}// 在链表开头添加元素prepend(value) {let node = new Node(value);if (!this.head) {this.head = node;this.tail = node;} else {node.next = this.head;this.head = node;}this.length++;}// 查找链表中指定索引的元素get(index) {if (index < 0 || index >= this.length) {return null;}let current = this.head;for (let i = 0; i < index; i++) {current = current.next;}return current;}// 删除链表中指定索引的元素remove(index) {if (index < 0 || index >= this.length) {return null;}if (index === 0) {this.head = this.head.next;this.length--;return;}let previousNode = this.get(index - 1);previousNode.next = previousNode.next.next;this.length--;}
}// 使用示例
let list = new LinkedList();
list.append(1);
list.append(2);
list.append(3);
console.log(list.get(1).value); // 2
list.remove(1);
console.log(list.get(1).value); // 3
4、加密算法 - RSA
const crypto = require('crypto');// 生成随机秘钥
let { publicKey, privateKey } = crypto.generateKeyPairSync('rsa', {modulusLength: 4096,publicKeyEncoding: {type: 'spki',format: 'pem'},privateKeyEncoding: {type: 'pkcs8',
最新文章
- MyBatis使用@Select注解写动态SQL语句
- 继承和接口
- 位图文件(BMP)
- 关于AQS
- 图解+原理推导完全读懂KPM算法
- 【Java八股文之进阶篇(三)】多线程编程核心之锁框架(一)
- C#批量转CSV到Excel
- Java Web和Java后端开发的学习路线
- CStdioFile的Writestring无法写入中文的问题
- java过滤器filter过滤相同url时的执行顺序
- PX4模块设计之四十四: bmp280模块
- 软件测试之测试分类
- Hessian矩阵及局部极小点的条件
- 中文去停用词
- 多版本中文停用词词表 + 多版本英文停用词词表 + python词表合并程序
- Java数据可视化 (JavaFX, Apache ECharts)
- python基础教程: