`
xieye
  • 浏览: 830936 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

php和node的差异(1)-- 函数作用域

    博客分类:
  • PHP
阅读更多
php中,函数内变量作用域限制在花括号里。
node中,函数内变量作用域,可以取函数外的变量的值。
当然,共同点是,外面都不能取里面的值。

php代码:
<?php
$s = 123;

function test ()
{
    echo $s;
}
test();

上面代码的打印结果是:
Notice: Undefined variable: s in D:\workspace_utf8\guai2\public\public\test\1.php on line 6

php报错了。

node代码:
var s = 123;
function test()
{
    console.log(s);
}
test();


上面的打印结果是123

另外,node不但能读,还能写变量
var s = 123;
(function test()
{
    s = 12345;
})();
console.log(s);


上面代码的打印结果是12345,被匿名函数改变了变量的值。

分享到:
评论

相关推荐

    Node-red存储数据到Influxddb中.docx

    Node-Red则是一种基于Node.js的可视化编程工具,常用于快速构建和部署IoT解决方案。 首先,我们需要在Node-Red环境中安装InfluxDB相关的插件。这通常通过Node-Red的管理界面完成,进入管理界面后找到“ palette”...

    Node.js-Node-RED用于连接物联网的可视化工具

    在物联网领域,硬件操作是一个关键环节,Node-RED 提供了丰富的节点集,可以与各种硬件设备进行交互,如 Arduino、Raspberry Pi 或其他支持 MQTT 协议的传感器和执行器。这些节点允许用户通过简单的配置,实现对硬件...

    node-red .zip

    1. **Node-RED基础知识** - Node-RED是由IBM开发的,用于快速创建IoT解决方案的工具。它的核心理念是通过拖放节点和连线来实现逻辑,而不是编写大量代码。 - 节点(Nodes):Node-RED中的每个小方块代表一个功能...

    node-sass安装包

    要在Node.js项目中安装Node-Sass,你需要首先确保已经安装了Node.js和npm(Node包管理器)。然后,在你的项目目录下,通过命令行运行以下命令: ``` npm install node-sass --save-dev ``` 这会将Node-Sass添加为...

    node-wifi-master

    1. 安装:首先,使用npm(Node.js包管理器)安装node-wifi-master库,命令为`npm install node-wifi-master`。 2. 引入库:在你的Node.js脚本中引入库,`const wifi = require('node-wifi-master')`。 3. 扫描WiFi...

    Node.js-一个能在单独的线程中执行Node.js函数的零依赖库

    标题中的“Node.js-一个能在单独的线程中执行Node.js函数的零依赖库”指出,这个库专注于在Node.js环境中实现多线程处理,且不依赖任何外部库。这通常意味着它提供了一种轻量级的方式来并行执行任务,避免了Node.js...

    前端开源库-node-sass-asset-functions

    而 `node-sass-asset-functions` 是 `node-sass` 的一个插件,它扩展了 `node-sass` 的内置函数集,增加了处理静态资产(如图片和字体)的能力。 在 `node-sass-asset-functions` 中,你可以定义自定义的函数来处理...

    node-polyfill-webpack-plugin:Webpack中的Polyfill Node.js核心模块

    node-polyfill-webpack-plugin Webpack中的Polyfill Node.js核心模块。 仅需要此模块。安装npm install node-polyfill-webpack-plugin用法将以下内容添加到您的webpack.config.js : const NodePolyfillPlugin = ...

    Node-RedUI界面显示温湿度光照

    Node-Red是一款基于Node.js的可视化编程工具,用于轻松创建和连接硬件设备、API和服务,构建物联网(IoT)解决方案。在这个场景中,我们关注的是如何在Node-Red的用户界面(UI)上显示温湿度和光照的数据。这些数据通常...

    node-jpeg-turbo-scaler:适用于Node.js的快速JPEG解码器和缩放器模块

    Node.js JPEG Turbo缩放器模块本机C ++ Node.js模块,它使用进行极快的JPEG压缩和解压缩。安装该模块已经过测试,只能在OS X上正确构建,并且需要通过手动安装libjpeg-turbo。 在任何系统上构建它都应该很容易,唯一...

    Node.js-Node-noop实现了一个noop函数

    总的来说,`Node-noop` 项目是一个基础的 Node.js 模块,它的存在是为了提供一个标准的 `noop` 函数实现,便于开发者在自己的代码中引用和使用。通过阅读和研究这个项目,可以进一步了解 Node.js 中函数的定义、模块...

    Electron-node-ffi编译通过源码

    然而,由于系统依赖性和配置差异,有时node-gyp会遇到编译失败的问题。 3. **Node-ffi(Foreign Function Interface)**:Node-ffi是一个纯JavaScript库,允许Node.js程序在不使用任何原生扩展的情况下调用C和C++库...

    node-hue-api, 用于与飞利浦色调桥和灯光交互的node.js 库.zip

    node-hue-api, 用于与飞利浦色调桥和灯光交互的node.js 库 节点色调 API 飞利浦色彩桥交互的node.js 库,用于控制飞利浦色彩灯泡和飞利浦的彩色灯光灯。本图书馆抽象出实际的飞利浦色彩桥 REST API,并提供了一些...

    node-html-to-image:Node.js模块,可从HTML生成图像

    欢迎使用node-html-to-image :sunrise_over_mountains: 一个从HTML生成图像的Node.js库 :house:描述该模块提供了一个从HTML生成图像(png,jpeg)的函数。 它在无头模式下使用伪造者来实现它。 此外,它还配备了...

    node-v18.16.0-win-x64

    Node.js发布于2009年5月,由Ryan Dahl开发,是一个基于Chrome V8引擎的JavaScript运行环境,使用了一个事件驱动、非阻塞式I/O模型, [1] 让JavaScript 运行在服务端的开发平台,它让JavaScript成为与PHP、Python、...

    Node.js-default-gateway获取跨平台默认网络网关

    其中可能包含了实现上述功能的源代码,包括读取和解析操作系统路由信息的函数,以及处理不同平台差异的逻辑。深入研究这个仓库的代码,可以进一步学习如何在Node.js中进行跨平台的系统交互和网络信息获取。 总之,...

    node-sass4.14.1和5.0.0版本.zip

    本文将深入探讨Node-SASS的4.14.1和5.0.0这两个版本之间的差异,并解析其关键特性与改进。 首先,Node-SASS是基于LibSASS的,LibSASS是C++实现的SASS编译器,它提供了与Ruby SASS类似的功能,但性能更优,特别适合...

    node-ffi-napi:适用于N.API风格的Node.js的外部函数接口(FFI)

    节点ffi-napiN-API的Node.js外部功能接口 node-ffi-napi是一个Node.js插件,用于使用纯JavaScript加载和调用动态库。 它可以用于创建与本机库的绑定,而无需编写任何C ++代码。 由于它可以处理跨JavaScript和C的类型...

    mha4mysql-node-0.56-0.el6.noarch.rpm

    mha(Master High Availability)目前在MySQL多服务器(超过二台),高可用方面是一个相对成熟的解决方案。

    Node.js-start-超级简单的任务Runner基于复合函数和promise链接

    在本文中,我们将深入探讨如何使用Node.js创建一个超级简单的任务Runner,该Runner基于复合函数和Promise链。这个任务Runner的目的是帮助开发者更高效地组织和执行一系列异步操作,这是Node.js开发中的常见需求。在...

Global site tag (gtag.js) - Google Analytics