判断变量是否定义、空值问题—— “- :- := :+ :? ”

分析 -  :-  :=  :+  :?   的区别

1、判断变量是否定义;  r=${xx-"mmmmmmmmmmmmmmmmmmmmmmmmmmmmm"}

[[email protected] opt]# unset xx
[[email protected] opt]# r=${xx-"mmmmmmmmmmmmmmmmmmmmmmmmmmmmm"}
[[email protected] opt]# echo $r
mmmmmmmmmmmmmmmmmmmmmmmmmmmmm
[[email protected] opt]# echo $xx

[[email protected] opt]# 

  如果变量xx未定义,则 ‘-‘ 代表把 mmmmmmmmmmmmmmmmmmmmmmmmmmmmm 赋值给 r ;不赋值给xx

  如果变量xx定义了且为空值的话,则会把空值赋值给 r

  如果变量xx不为空的话: 则直接把xx的值赋值给r

2、判断变量是否定义了且是否为空值;  r=${xx:-"mmmmmmmmmmmmmmmmmmmmmmmmmm"}

  如果变量xx未定义的话:则‘:-’代表把 mmmmmmmmmmmmmmmmmmmmmmmmmm 赋值给 r ; xx还是未定义

  如果变量xx定义了且为空的话:则会把mmmmmmmmmmmmmmmmmmmmmmmmmm赋值给r ; echo $xx 还是为空值

  如果变量xx定义了且不为空的话:则把xx的值赋值给r ; 且echo $xx 的值是xx的值

3、判断 r=${xx:="mmmmmmmmmmmmmmmmmmmmmmmmmm"}

  如果变量xx未定义的话:则‘:-’代表把 mmmmmmmmmmmmmmmmmmmmmmmmmm 赋值给 r ; 同时把mmmmmmmmmmmmmmmmmmmmmmmmmm赋值给xx ,即 echo $xx d的值为mmmmmmmmmmmmmmmmmmmmmmmmmm

  如果变量xx定义了且为空的话:则‘:-’代表把 mmmmmmmmmmmmmmmmmmmmmmmmmm 赋值给 r ; 同时把mmmmmmmmmmmmmmmmmmmmmmmmmm赋值给xx ,即 echo $xx d的值为mmmmmmmmmmmmmmmmmmmmmmmmmm

4、判断 r=${xx:?"mmmmmmmmmmmmmmmmmmmmmmmmmm"}

  如果变量xx未定义或者为空值的话:则会显示警告信息    xx:mmmmmmmmmmmmmmmmmmmmmmmmmm

  如果变量xx定义了且不为空的话:则‘:?’代表把 mmmmmmmmmmmmmmmmmmmmmmmmmm 赋值给 r

5、判断 r=${xx:+"mmmmmmmmmmmmmmmmmmmmmmmmmm"}

  如果变量xx未定义的话:则不会赋值成功

  如果变量定义了且非空的话:则‘:+’代表把 mmmmmmmmmmmmmmmmmmmmmmmmmm 赋值给 r

时间: 2024-10-06 10:10:47

判断变量是否定义、空值问题—— “- :- := :+ :? ”的相关文章

1 python判断变量是否定义

1 ## python 判断一个变量是否已经定义 2 3 python中检测某个变量是否有定义 4 5 第一种方法使用内置函数locals(): 6 locals():获取已定义对象字典 7 8 'testvar' in locals().keys() 9 10 第二种方法使用内置函数dir(): 11 dir():获取已定义对象列表 12 13 'testvar' in dir() 14 15 第三种方法使用内置函数vars(): 16 vars():获取已定义对象字典 17 18 vars(

工作笔记1-PHP和JS判断变量是否定义

PHP中: 通过isset(变量名)来判断,定义返回true/未定义返回false JS中: 通过typeof来判断.

js 判断变量是否为空或未定义

判断变量是否定义: if(typeof(hao) == "undefined"){ //未定义 }else{ //定义 } 判断变量是否为空或NULL,是则返回'', 反之返回原对象值: function getStr(data){ if(!data){ return ''; }else if(typeof(data) == "undefined"){ return ''; } return data.toString(); } 原文地址:https://www.c

JavaScript判断变量数据类型

一.JS中的数据类型 1.数值型(Number):包括整数.浮点数. 2.布尔型(Boolean) 3.字符串型(String) 4.对象(Object) 5.数组(Array) 6.空值(Null) 7.未定义(Undefined) 二.1.数值型(number) 比较常用的判断方法是: function isNumber(val){             return typeof val === 'number';         } 2.判断变量val是不是布尔类型 function

javascript 判断变量 是否为空null,undefined, 空数组,空对象(空Object),字符串是否为空或全由空白字符组成,数字是否为0,布尔是否为false。

javascript 判断变量 是否为空null,undefined, 空数组,空对象,空Object,字符串是否为空或全由空白字符组成,数字是否为0,布尔是否为false.由于Object没有length用 Object.keys()适用于数组,对象 返回可枚举的实例属性名组成的数组来判断是否为空. 利用逻辑判断中or (||)只要有一项为真则不再计算下一个表达式 来实现不管传入的参数是何种类型.只要符合我对空的定义即返回true. 1 function IsNothing(e) { 2 va

***PHP中判断变量为空的几种方法

总结PHP中,"NULL" 和 "空" 是2个概念. isset  主要用来判断变量是否被初始化过empty  可以将值为 "假"."空"."0"."NULL"."未初始化" 的变量都判断为TRUEis_null  仅把值为 "NULL" 的变量判断为TRUEvar == null  把值为 "假"."空".

初学swift笔记变量的定义(一)

swift变量的定义 1 import Foundation 2 3 /* 4 变量的定义 5 变量的类型是可以不用写的 6 var a=10 7 常量的定义 let修饰 8 */ 9 10 var a=10 11 print(a) 12 let b=11 13 print(b) 14 15 /* 16 类型标注 17 指定变量的类型 :[空格]首字母大写 18 */ 19 var x: Int 20 x=9 21 print(x) 22 let y: Int=10 23 print(y) 24

PHP 类型判断和NULL,空值检查

PHP是一种宽松类型的编程语言,在函数中对传入的参数值的“类型”以及”值是否为空或者NULL“进行检查是不可缺少的步骤. 类型检查 从PHP5开始,PHP允许对函数的参数进行类型约束,即可以约束参数的类型为对象,接口,数组(PHP 5.1开始)或者callable(PHP5.4起),但是不可以约束参数类型为标量类型(如int ,string,bool),也不可以约束为Traits类型.如果不约束,默认情况下,参数的类型为mixed,即可以接受所有类型. function test(array $

PHP - 判断变量是否为空

方案解决目标:判断一个变量是否为空 本文整理了PHP中一些常用的.判断变量为空的方法,分享给大家. 1,isset功能:判断变量是否被初始化 说明:它并不会判断变量是否为空,并且可以用来判断数组中元素是否被定义过 注意:当使用isset来判断数组元素是否被初始化过时,它的效率比array_key_exists高4倍左右 复制代码 代码示例: <?php $a = ''; $a['c'] = ''; if (!isset($a)) echo '$a 未被初始化' . ""; if